Files
tianrunCRM/Assets/trCRM/upgradeRes4Dev/priority/lua/public/CLLPool.lua

30 lines
519 B
Lua
Raw Normal View History

2020-07-04 14:41:25 +08:00
require("public.class")
require("public.CLLQueue")
---@class CLLPool
CLLPool = class("CLLPool")
--local queue;
--local cloneClass;
function CLLPool:ctor(classObj)
self.queue = CLLQueue.new(100)
self.cloneClass = classObj
end
function CLLPool:createObj()
return self.cloneClass.new()
end
function CLLPool:borrow()
if self.queue:isEmpty() then
return self:createObj()
end
return self.queue:deQueue();
end
function CLLPool:retObj(obj)
self.queue:enQueue(obj);
end
return CLLPool;