尽管我认为它应该很常见,但我一直无法找到这个问题的答案,所以我猜我在做一些愚蠢的事情或者没有正确阅读手册。
无论如何,这就是我想要做的。我有一个程序,它有一些为 Lua 注册的 C 函数。
在另一点,我调用 lua 函数
lua_getglobal(mainL,"interact");
和
if (lua_pcall(mainL, 2, 0, 0) != 0)
printf("error running function `f': %s",
lua_tostring(L, -1));
printf("interact\n");
现在在 Lua 函数中,我经常调用其他注册的 C 函数。似乎每次这样做时,它都在其单独的线程中运行。(如我错了请纠正我)
所以我想问的是,在执行 Lua 函数的下一行之前,它是否有任何阻塞直到 C 函数调用完成。
(是的,我尝试在我的 C 程序中使用互斥锁,它适用于我,但由于某种原因似乎不适用于其他 PC 上的其他人,所以我试图让它阻塞,因为这会使一切变得很多更轻松)
谢谢