У меня утечка памяти в Lua-части моего приложения. По какой-то причине мой объект не удаляется, когда должен (даже когда я вызываю collectgarbage("collect")
). Я предполагаю, что это означает, что у меня есть свисающая ссылка где-то.
Так, как я могу получить список, где находятся различные ссылки на объект? Например:
obj = MyObject()
ref = obj
tbl = {obj}
obj = nil
print(getreferences(obj)) -- should print something like _G.ref, _G.tbl[1]
Я просто написал бы свою собственную функцию для этого, но он не смог бы найти ссылки, содержащиеся внутри замыканий. Любой совет?