返回

关于lua调用的疑惑

我想在我的游戏里使用lua语言作脚本,但有些问题没想明白。

使用lua_pcall运行一段脚本,如果脚本没有结束,则lua_pcall不会返回。

我希望在脚本某句运行时暂停脚本(也有可能是在某个lua脚本函数内部暂停),但由于这段脚本没有运行结束,在引擎里lua_pcall不会返回,那么引擎就全部停住了,图形、声音等等都停了。

当然可以使用多线程解决这个问题,不过线程间的同步似乎太麻烦,处理不当也很容易出现问题。

单线程的话,只好不允许脚本暂停,只在脚本里发一些命令,而真正的处理在脚本之外。但这对命令间的关系要求较高,而且脚本写起来也挺别扭的,很多命令其实会推迟运行。

我想请教一下,究竟有没有暂停脚本的方法,如果不能暂停或者不应该暂停的话,使用上面发命令的方法是否可行,或者有更加适用的方法,谢谢

名字: 自动排版 密码:

回复 | (1687) | Little Tiger | 2007-11-07 02:58:09