我可以在同一台机器上轻松启动两个或多个单独的Lua程序(在LuaJIT2上运行)。但是这些程序有什么方法可以沟通吗?
我能想到的最好的解决方案是每个程序都可以编写一个orher程序可以读取的文本文件。但这是一个非常缓慢的解决方案(即使文本文件保存在虚拟RAM磁盘上)。
我知道thera是zeromq和其他可能对此有帮助的事情......问题是指令太长而复杂/混乱(至少对我而言)。
有什么建议吗?特别是一些工作代码示例,无论多么简单,都会受到赞赏。甚至如何将一个变量的值从一个LuaJIT2进程传递给另一个变量。
(我正在使用Windows XP SP3,如果重要的话......)
答案 0 :(得分:3)
基本上,你应该寻找的关键词是“IPC”(进程间通信)。
您可能想要探索的一些选项:
我不能说其中一个是最好的。选择取决于您未提供的其他因素(所需的速度,延迟,您想要通信的内容)。我只希望我指出你正确的方向。
另外,如果ZeroMQ过于复杂,我强烈建议您阅读更多内容,而不是寻找更简单的代码示例。 Lua是“自己动手”的语言。
如果您不是真的坚持使用Lua,请查看PyRo(Python远程对象)。或者你可能想要自己实现这样的东西。