首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >异步运行lua_pcall

异步运行lua_pcall
EN

Stack Overflow用户
提问于 2013-10-29 17:03:54
回答 1查看 497关注 0票数 2

我有一个C应用程序,我将LUA作为一种脚本语言集成在其中,嵌入LUA没有问题。

目前,我想知道是否可以从我的C应用程序同时运行2或3个不同的脚本,我注意到lua_pcall是同步运行的(因此它在完成脚本的完全执行之前不会返回。

有没有任何方法可以同时运行多个脚本,或者至少让lua_pcall异步运行。我不想在脚本本身中找到解决方案,因为我无法控制将要运行的脚本(客户将编写用于配置的脚本,我不想告诉他您必须这样做,等等,在脚本中处理同步问题)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-30 13:43:34

正如Eran所说,您可以很容易地在一个独立的系统线程中运行一个新的lua_State (一个是从新线程创建的)。

在此基础上您真正需要做的是一些基本的锁定(实现lua_lock/lua_unlock/init/关机),这样全局状态元素(_G、Registry某些内部元素)不会从多个线程中访问。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19664692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档