lua_gc
ガーベジコレクタを制御します。
[-0, +0, e]
c
int lua_gc (lua_State *L, int what, int data);説明
ガーベジコレクタを制御します。
この関数はwhatパラメータの値に応じて、いくつかのタスクを実行します:
LUA_GCSTOP: ガーベジコレクタを停止します。LUA_GCRESTART: ガーベジコレクタを再起動します。LUA_GCCOLLECT: 完全なガーベジコレクションサイクルを実行します。LUA_GCCOUNT: Luaが使用中のメモリの現在の量(キロバイト単位)を返します。LUA_GCCOUNTB: Luaが使用中のメモリの現在のバイト数を1024で割った余りを返します。LUA_GCSTEP: ガーベジコレクションのインクリメンタルステップを実行します。ステップの「サイズ」はdata(大きい値はより多くのステップを意味します)によって非指定の方法で制御されます。ステップサイズを制御したい場合は、dataの値を実験的に調整する必要があります。この関数は、ステップがガーベジコレクションサイクルを終了した場合に1を返します。LUA_GCSETPAUSE:dataをコレクタの一時停止の新しい値として設定します。関数は一時停止の前の値を返します。LUA_GCSETSTEPMUL:dataをコレクタのステップ乗数の新しい値として設定します。関数はステップ乗数の前の値を返します。
サンプルコード
c
lua_gc(L, LUA_GCCOLLECT, 0);このコードは、Luaのガーベジコレクションを強制的に実行します。
互換性
- Lua5.1
関連項目
- LUA_GCSTOP
- LUA_GCCOUNT