Scripting API

ObjectPool<T>

class in UnityEngine.Pool · UnityEngine.CoreModule

Not in Unity's public API, or in an assembly the coverage doesn't count.
In Tassix

A stack of inactive objects: Get takes one (or creates one) and calls actionOnGet; Release calls actionOnRelease and keeps it, up to maxSize (past which actionOnDestroy gets it instead). With collectionCheck, releasing an object the pool already holds throws.

Constructors 1

ObjectPool(Func<T> createFunc, Action<T>? actionOnGet = null, Action<T>? actionOnRelease = null, Action<T>? actionOnDestroy = null, bool collectionCheck = true, int defaultCapacity = 10, int maxSize = 10000)

Properties 3

int CountActive { get; }
int CountAll { get; }

Every object the pool made that it hasn't destroyed.

int CountInactive { get; }

Methods 4

void Clear()
void Dispose()
T Get()
PooledObject<T> Get(out T v)
void Release(T element)