gpt4 book ai didi

debugging - 在 Lua 中查找对一个对象的所有引用

转载 作者:行者123 更新时间:2023-12-04 20:53:49 26 4
gpt4 key购买 nike

我的应用程序的 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

关于debugging - 在 Lua 中查找对一个对象的所有引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7166124/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com