cocos3.0 rc1 lua 如何写个单例接口?

请教大家一个问题 cocos2dx 3.0 lua这块 如何写个单例的函数?

xxx = function (clsName)
local o = _G
if o then return o end
o = clsName:new()
end

_G = o
return o
end

我的代码大致如上

但是会出问题 就是会被释放掉 请高手指教

你还需要一个拷贝结构的方法,外部就读取这个拷贝的结构,源就不会被释放了

能详细说说吗?或者给给些伪代码,谢谢.