ObjectPool.ts
468 Bytes
export default class ObjectPool {
private static clsArr = [];
static pop(cls: any) {
let idx = this.clsArr.indexOf(cls);
if (idx < 0) {
idx = this.clsArr.length;
this.clsArr.push(cls);
}
let key = 'poolKey' + idx;
let item = Laya.Pool.getItemByClass(key, cls);
item.poolKey = key;
return item;
}
static push(item) {
Laya.Pool.recover(item.poolKey, item);
}
}