Beispiel #1
0
        /************************************************************************************************************************/

        /// <summary>
        /// Calls <see cref="ObjectPool{T}.Release"/> to add the `item` to the list of spares so it can be reused.
        /// </summary>
        public static void Release <T>(T item)
            where T : class, new()
        => ObjectPool <T> .Release(item);
Beispiel #2
0
 /// <summary>
 /// Calls <see cref="ObjectPool{T}.Release"/> to clear the `list` and mark it as a spare
 /// so it can be later returned by <see cref="AcquireList"/>.
 /// </summary>
 public static void Release <T>(List <T> list)
 {
     list.Clear();
     ObjectPool <List <T> > .Release(list);
 }
Beispiel #3
0
 /// <summary>
 /// Calls <see cref="ObjectPool{T}.Acquire"/> to get a spare item if there are any, or create a new one.
 /// </summary>
 /// <remarks>Remember to <see cref="Release{T}(T)"/> it when you are done.</remarks>
 public static void Acquire <T>(out T item)
     where T : class, new()
 => item = ObjectPool <T> .Acquire();
Beispiel #4
0
        /************************************************************************************************************************/

        /// <summary>
        /// Calls <see cref="ObjectPool{T}.Acquire"/> to get a spare item if there are any, or create a new one.
        /// </summary>
        /// <remarks>Remember to <see cref="Release{T}(T)"/> it when you are done.</remarks>
        public static T Acquire <T>()
            where T : class, new()
        => ObjectPool <T> .Acquire();
Beispiel #5
0
 /// <summary>
 /// Sets <see cref="StringBuilder.Length"/> = 0 and <see cref="ObjectPool{T}.Release"/> to mark it as a spare
 /// so it can be later returned by <see cref="AcquireStringBuilder"/>.
 /// </summary>
 public static void Release(StringBuilder builder)
 {
     builder.Length = 0;
     ObjectPool <StringBuilder> .Release(builder);
 }
Beispiel #6
0
 /// <summary>
 /// Calls <see cref="ObjectPool{T}.Release"/> to clear the `set` and mark it as a spare
 /// so it can be later returned by <see cref="AcquireSet"/>.
 /// </summary>
 public static void Release <T>(HashSet <T> set)
 {
     set.Clear();
     ObjectPool <HashSet <T> > .Release(set);
 }
Beispiel #7
0
            /************************************************************************************************************************/

            protected override void Release() => ObjectPool <Curve> .Release(this);