我正在LUA的線程中工作,我正在使用lua_newthread在我的代碼中執行相同的函數n次。lua_newthread正在停止
要與競爭對手的線程一起實例化C++中的一些線程,併爲每個線程分配一個lua_state這個lua_state = lua_newthread。 此線程僅在應用程序結束時被銷燬,所以我總是重用這些線程的屬性lua_state。我的問題是這樣的, 經過一段運行時間,應用程序發生崩潰,這可能是垃圾收集器造成的?
在我上一次的應用程序中,我使用了命令lua_gc(thread,LUA_GCSTOP,0),但錯誤仍然存在。
我試過的另一個策略是lua_resume每次運行結束時,我添加了命令lua_settop(thread,0),以便電池耗盡並且不消耗任何內存空間。
請幫幫我,會發生什麼?
謝謝! 使用策略lua_State完全獨立,是否有任何方法可以完成全局變量的共享? 我需要訪問全局變量。在這種情況下,我使用LOCK和UNLOCK方法來訪問這些變量。 –