ECS Framework API / ComponentPoolManager
Class: ComponentPoolManager
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:144
全局组件池管理器
Methods
getInstance()
staticgetInstance():ComponentPoolManager
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:154
Returns
ComponentPoolManager
registerPool()
registerPool<
T>(componentName,createFn,resetFn?,maxSize?,minSize?):void
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:164
注册组件池
Type Parameters
T
T extends Component
Parameters
componentName
string
createFn
() => T
resetFn?
(component) => void
maxSize?
number
minSize?
number
Returns
void
acquireComponent()
acquireComponent<
T>(componentName):null|T
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:183
获取组件实例
Type Parameters
T
T extends Component
Parameters
componentName
string
Returns
null | T
releaseComponent()
releaseComponent<
T>(componentName,component):void
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:194
释放组件实例
Type Parameters
T
T extends Component
Parameters
componentName
string
component
T
Returns
void
update()
update():
void
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:231
自动清理(定期调用)
Returns
void
getHotComponents()
getHotComponents(
threshold):string[]
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:255
获取热点组件列表
Parameters
threshold
number = 100
Returns
string[]
prewarmAll()
prewarmAll(
count):void
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:264
预热所有池
Parameters
count
number = 100
Returns
void
clearAll()
clearAll():
void
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:273
清空所有池
Returns
void
reset()
reset():
void
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:282
重置管理器
Returns
void
getGlobalStats()
getGlobalStats():
object[]
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:290
获取全局统计信息
Returns
object[]
getPoolStats()
getPoolStats():
Map<string, {available:number;maxSize:number; }>
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:315
获取池统计信息
Returns
Map<string, { available: number; maxSize: number; }>
getPoolUtilization()
getPoolUtilization():
Map<string, {used:number;total:number;utilization:number; }>
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:329
获取池利用率信息
Returns
Map<string, { used: number; total: number; utilization: number; }>
getComponentUtilization()
getComponentUtilization(
componentName):number
Defined in: packages/core/src/ECS/Core/ComponentPool.ts:349
获取指定组件的池利用率
Parameters
componentName
string
Returns
number