有沒有辦法知道執行Lua腳本的線程(協程)是否在lua_pushcclosure調用的起始位置?Lua c-api:如何識別lua_pushcclosure回調中涉及的協程/線程?
爲了管理一些與lua線程相關的東西(延遲暫停/恢復或私有線程變量),我需要確定回調中涉及的線程。我知道我可以通過使用lua_gettop創建它時獲取線索索引,但是我找不到使用它的方法,因此它有助於在從Lua腳本發出lua_pushcclosure調用時識別線程。
我現在的系統允許嵌套的腳本調用,這樣一個腳本可以執行其他腳本(每個嵌套腳本調用創建一個新線程具有相同lua_state,因此用於獲取棧多線程條目lua_state。)
我正在使用Lua 5.2
「lua_pushcclosure回調」'lua_pushcclosure'不是回調。你在說什麼時候你打電話給那個功能? –
是的我正在討論在lua腳本中調用函數的時間。通過'lua_pushcclosure'公開的函數可以從不同的線程調用,我需要確定哪一個。 – Valkea