Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java LuaJ是否支持uu gc元方法功能_Java_Lua_Luaj - Fatal编程技术网

Java LuaJ是否支持uu gc元方法功能

Java LuaJ是否支持uu gc元方法功能,java,lua,luaj,Java,Lua,Luaj,在一些个人(琐碎的)项目上试用LuaJ时,我发现我似乎无法在表元表中使用\uu gc,如下例所示: do local tbl = {id="tblID"} setmetatable(tbl,{__gc=function(self) print("gc'd :"..self.id) end }) print(tbl.id) end collectgarbage('collect') 虽然我知道LuaJcollectgarbage()中有一个冗余函数调用,但由于LuaJ依

在一些个人(琐碎的)项目上试用LuaJ时,我发现我似乎无法在表元表中使用
\uu gc
,如下例所示:

do
    local tbl = {id="tblID"}
    setmetatable(tbl,{__gc=function(self) print("gc'd :"..self.id) end })
    print(tbl.id)
end
collectgarbage('collect')
虽然我知道LuaJ
collectgarbage()
中有一个冗余函数调用,但由于LuaJ依赖于Java自己的垃圾收集,所以我将其包括在内,因为其他一些解释器似乎需要它(例如Lua自己的at)

给定的示例似乎在上面提供的在线解释器中起作用。 我目前假设故障要么是以某种方式与LuaJ有关,要么是在程序执行结束时发生的垃圾收集没有对收集的对象调用_gc元方法

我已经尝试在应用程序结束之前为java提供足够的时间来对表进行GC,方法是在调用之后提供一段很长的等待时间,同时调用
System.GC()
要向运行时建议垃圾收集,所有这些当前都无效