• Manual
  • Scripting API
  • Changelog
  • License
🏷️ Namespaces
  • Zigurous.DataStructures
🧱 Classes
  • ArrayExtensions
  • ComparableExtensions
  • DictionaryExtensions
  • DoubleAccumulator
  • FixedUpdateStrategy
  • FloatAccumulator
  • HashCode
  • HashSetExtensions
  • Identifier
  • IntAccumulator
  • LateUpdateStrategy
  • ListExtensions
  • Modules<T>
  • NormalUpdateStrategy
  • ObjectPool<T>
  • QuaternionAccumulator
  • SingletonBehavior<T>
  • SortedSetExtensions
  • StringExtensions
  • UpdateBehavior
  • UpdateStrategy
  • ValueAccumulator<T>
  • Vector2Accumulator
  • Vector2IntAccumulator
  • Vector3Accumulator
  • Vector3IntAccumulator
  • Vector4Accumulator
🗂️ Structs
  • Bitmask
  • Bool3
  • ClampedRange
  • ColorRange
  • EulerRange
  • FloatRange
  • GridSize
  • IntRange
  • Quantity<T>
  • Range<T>
  • Size
  • UIntRange
  • UnitIntervalRange
  • Vector2Range
  • Vector3Range
  • Vector4Range
🎚️ Interfaces
  • IModular<T>
  • INumberRange<T>
  • IObjectPool<T>
  • IRange<T>
📋 Enums
  • UpdateMode
🗣️ Delegates
  • ArrayExtensions.Reducer<TSum, TElement>
  • ListExtensions.Reducer<TSum, TItem>
  • ObjectPool<T>.Generator
  • UpdateStrategy.UpdateAction

IObjectPool<T>

Interface in Zigurous.DataStructures


Declaration

public interface IObjectPool<T>
    where T : class

Description

A type that can retrieve and recycle objects from a shared pool.

Type Parameters

TThe type of object to be pooled.

Methods

RetrieveRemoves and returns an object from the pool.
RecycleAdds an object back to the pool so it can be reused.
EmptyEmpties the pool of all objects.