Class: GCSystem
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:83
A unified garbage collection system for managing GPU resources. Resources register themselves with a cleanup callback and are automatically cleaned up when they haven't been used for a specified amount of time.
Example
// Register a resource for GC
gc.addResource(myResource, () => {
// cleanup logic here
myResource.unload();
});
// Touch the resource when used (resets idle timer)
gc.touch(myResource);
// Remove from GC tracking (e.g., on manual destroy)
gc.removeResource(myResource);
Advanced
Implements
Constructors
Constructor
> new GCSystem(renderer): GCSystem
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:112
Creates a new GCSystem instance.
Parameters
renderer
The renderer this garbage collection system works for
Returns
GCSystem
Properties
maxUnusedTime
> maxUnusedTime: number
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:93
Maximum time in ms a resource can be unused before being garbage collected
now
> now: number
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:106
Current timestamp used for age calculations
defaultOptions
> static defaultOptions: GCSystemOptions
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:91
Default options for the GCSystem
Accessors
enabled
Get Signature
> get enabled(): boolean
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:122
Gets whether the garbage collection system is currently enabled.
Returns
boolean
True if GC is enabled, false otherwise
Set Signature
> set enabled(value): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:128
Enables or disables the garbage collection system. When enabled, schedules periodic cleanup of resources. When disabled, cancels all scheduled cleanups.
Parameters
value
boolean
Returns
void
Methods
addCollection()
> addCollection(context, collection, type): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:149
Registers a collection for garbage collection tracking.
Parameters
context
any
The object containing the collection
collection
string
The property name on context that holds the collection
type
"array" | "hash"
The type of collection to track ('hash' or 'array')
Returns
void
addResource()
> addResource(resource, type): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:155
Registers a resource for garbage collection tracking.
Parameters
resource
GCableEventEmitter
The resource to track
type
"renderable" | "resource"
The type of resource to track
Returns
void
addResourceHash()
> addResourceHash(context, hash, type, priority?): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:170
Registers a hash-based resource collection for garbage collection tracking. Resources in the hash will be automatically tracked and cleaned up when unused.
Parameters
context
any
The object containing the hash property
hash
string
The property name on context that holds the resource hash
type
"renderable" | "resource"
The type of resources in the hash ('resource' or 'renderable')
priority?
number
Processing priority (lower values are processed first)
Returns
void
destroy()
> destroy(): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:187
Cleans up the garbage collection system. Disables GC and removes all tracked resources.
Returns
void
Implementation of
init()
> init(options): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:117
Initializes the garbage collection system with the provided options.
Parameters
options
Configuration options
Returns
void
Implementation of
postrender()
> protected postrender(): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:136
Performs garbage collection after rendering.
Returns
void
prerender()
> protected prerender(options): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:134
Called before rendering. Updates the current timestamp.
Parameters
options
The render options
Returns
void
removeResource()
> removeResource(resource): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:161
Removes a resource from garbage collection tracking. Call this when manually destroying a resource.
Parameters
resource
The resource to stop tracking
Returns
void
run()
> run(): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:175
Performs garbage collection by cleaning up unused resources. Removes resources that haven't been used for longer than maxUnusedTime.
Returns
void
runOnHash()
> protected runOnHash(hashEntry, now): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:185
Parameters
hashEntry
GCResourceHashEntry
now
number
Returns
void
runOnResource()
> protected runOnResource(resource, now, writeIndex): number
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:177
Parameters
resource
GCableEventEmitter
now
number
writeIndex
number
Returns
number
updateRenderableGCTick()
> protected updateRenderableGCTick(renderable, now): void
Defined in: node_modules/pixi.js/lib/rendering/renderers/shared/GCSystem.d.ts:176
Parameters
renderable
now
number
Returns
void