LuaJIT支持对表格使用__gc吗?

Lua 5.2(与5.1相比)支持表的__gc特性。

LuaJIT是否借用了这个好功能?

(我进行了谷歌搜索,并检查了LuaJIT的变更历史,但找不到答案。)

点赞
用户204011
用户204011

尝试一下:

-- 测试.lua
do
  local x = setmetatable({},{
    __gc = function() print("works") end
  })
end
collectgarbage("collect")
collectgarbage("collect")

.

$ lua51 -v
Lua 5.1.5  Copyright (C) 1994-2012 Lua.org, PUC-Rio
$ lua51 test.lua
$ lua52 -v
Lua 5.2.2  Copyright (C) 1994-2013 Lua.org, PUC-Rio
$ lua52 test.lua
works
$ luajit -v
LuaJIT 2.0.2 -- 版权所有 (C) 2005-2013 Mike Pall。http://luajit.org/
$ luajit test.lua
$

所以简短的答案是不。

2013-10-21 09:18:43