私はCで書かれたLuaモジュールに完全なuserdataを持っています__gc()
。userdataにはガベージコレクターによって呼び出されるmetamethodがあります。__gc()
luaインタープリターは呼び出し後にuserdataメモリを解放しますか、それともfree()
内部で解放する必要があり__gc()
ますか?
1 に答える
8
自分で malloc() していないため、メモリを解放しないでください。Lua は両方を行います。実際、 Lua 5.1 リファレンス マニュアルのセクション 2.10.1 で説明されているように、メモリは同じガベージ コレクション サイクルでは収集されません。
于 2008-10-21T09:32:55.343 に答える