/** * 高性能对象池 * 用于复用频繁创建/销毁的对象(如粒子、子弹) */ export interface ObjectPoolOptions { /** 创建新对象的工厂函数 */ create: () => T; /** 重置对象的函数 */ reset?: (obj: T) => void; /** 初始池大小 */ initialSize?: number; /** 最大池大小(防止内存泄漏) */ maxSize?: number; } export declare class ObjectPool { private pool; private activeObjects; private createFn; private resetFn?; private maxSize; constructor(createOrOptions: (() => T) | ObjectPoolOptions); /** * 从池中获取对象 */ acquire(): T; /** * 将对象归还池中 */ release(obj: T): void; /** * 释放所有活跃对象 */ releaseAll(): void; /** * 遍历所有活跃对象 */ forEach(callback: (obj: T) => void): void; /** * 获取活跃对象数量 */ get activeCount(): number; /** * 获取池中可用对象数量 */ get availableCount(): number; /** * 清空池 */ clear(): void; } //# sourceMappingURL=ObjectPool.d.ts.map