当前位置 : 主页 > 网络编程 > lua >

debugging – 在Lua中查找对象的所有引用

来源:互联网 收集:自由互联 发布时间:2021-06-23
我的应用程序的Lua部分有内存泄漏.无论出于何种原因,我的对象都不会被删除(即使我调用collectgarbage(“collect”)).我认为这意味着我有一个悬挂的参考. 那么我怎样才能获得对象的各种引
我的应用程序的Lua部分有内存泄漏.无论出于何种原因,我的对象都不会被删除(即使我调用collectgarbage(“collect”)).我认为这意味着我有一个悬挂的参考.

那么我怎样才能获得对象的各种引用所在的列表?例如:

obj = MyObject()
ref = obj
tbl = {obj}
obj = nil
print(getreferences(obj)) -- should print something like _G.ref, _G.tbl[1]

我只是为此编写自己的函数,但它无法找到包含在闭包内的引用.有什么建议?

有一个工具可以遍历整个Lua宇宙.见 http://lua-users.org/lists/lua-l/2006-07/msg00110.html
网友评论