pixi-reels

ObjectPool\<T\>

pixi-reels


pixi-reels / index / ObjectPool

Class: ObjectPool<T>

Defined in: pool/ObjectPool.ts:11

Generic object pool for reusing expensive-to-create objects.

Reduces GC pressure by recycling objects instead of creating/destroying them each frame. Used internally for ReelSymbol instances and available to game code for trails, particles, etc.

Type Parameters#

Type ParameterDescription
TThe type of object to pool.

Implements#

Constructors#

Constructor#

new ObjectPool<T>(
   _factory: (key: string) => T, 
   _reset?: (item: T) => void, 
   _dispose?: (item: T) => void, 
   _maxPerKey?: number
): ObjectPool<T>;

Defined in: pool/ObjectPool.ts:17

Parameters#

ParameterTypeDefault value
_factory(key: string) => Tundefined
_reset?(item: T) => voidundefined
_dispose?(item: T) => voidundefined
_maxPerKey?number20

Returns#

ObjectPool<T>

Accessors#

isDestroyed#

Get Signature#

get isDestroyed(): boolean;

Defined in: pool/ObjectPool.ts:24

Returns

boolean

Implementation of#

Disposable.isDestroyed


totalSize#

Get Signature#

get totalSize(): number;

Defined in: pool/ObjectPool.ts:78

Get total pooled items across all keys.

Returns

number

Methods#

acquire()#

acquire(key: string): T;

Defined in: pool/ObjectPool.ts:31

Get an object from the pool, or create a new one if the pool is empty.

Parameters#

ParameterType
keystring

Returns#

T


clear()#

clear(): void;

Defined in: pool/ObjectPool.ts:87

Clear all pooled items, calling dispose on each.

Returns#

void


destroy()#

destroy(): void;

Defined in: pool/ObjectPool.ts:99

Returns#

void

Implementation of#

Disposable.destroy


release()#

release(key: string, item: T): void;

Defined in: pool/ObjectPool.ts:52

Return an object to the pool for reuse. If the pool is at capacity, the object is disposed instead.

Parameters#

ParameterType
keystring
itemT

Returns#

void


size()#

size(key: string): number;

Defined in: pool/ObjectPool.ts:73

Get the number of pooled items for a key.

Parameters#

ParameterType
keystring

Returns#

number