私のアプリケーションは、グローバルミューテックスを使用するマルチスレッド環境でLuaを使用しています。これは次のように実装されました:
- スレッドロックミューテックス、
- 電話
lua_newthread
- で初期化を実行します
coroutine
- それでも僕らは走り
lua_resume
ますcoroutine
- ミューテックスのロックを解除
lua_lock/unlock
luaがで動作する場合、が実装されていない場合、GCは停止しcoroutine
ます。
私の質問は、初期化プロセスでグローバルLua構造体が必要ない場合、ロックせずにステップ2と3を実行できますか?coroutine
グローバルも必要としない場合、ロックせずにこのすべてのプロセスを実行できますか?
どのような場合、私は通常、ロックせずにLua関数を使用できますか?