LuaJ(或其他Java LUA解释器)-您能否在Java中调用一个LUA脚本而无需等待其返回?

我一直在为 Android 开发一个 RPG 游戏引擎,现在我认为需要为战斗引擎添加一种脚本语言。单纯依靠 XML 配置驱动游戏内容变得过于复杂,像以前做的那样。游戏开发社区似乎喜欢 LUA 作为脚本语言,所以我正在做一些研究。由于引擎是用 Java 编写的,所以我正在考虑使用 LuaJ 作为我的 LUA 解释器,因为我发现一些旧的线程表明它可能是最好的 Java LUA 解释器,但如果有人对更好的解释器有更现代的意见,我很乐意倾听。

无论如何,我需要能够从 Java 调用 LUA 脚本,并在不等待脚本返回的情况下继续执行游戏线程。这是否可能使用 LuaJ 或任何其他流行的基于 Java 的解释器?我知道我总是可以将脚本调用放在它自己的线程中,但我可能会同时有许多脚本活动,并且这是浪费的,因为我不需要一个返回值。

点赞
用户3759173
用户3759173

如果您想让任何东西与您的游戏线程并行运行,您必须将其放入其自己的线程中。

如果您不想为每个调用启动一个线程,可以使用某种 Executor(例如 ThreadPoolExecutor)。

用法如下:https://stackoverflow.com/a/14286452/3759173

2014-06-24 12:12:44