public interface CoronaRuntimeTask
CoronaRuntime
在渲染帧之前执行的单个任务。该任务将在 CoronaRuntime
运行的同一线程上执行。此类的目的是允许另一个线程向 CoronaRuntime
发送一个任务,该任务将在 CoronaRuntime
和 Lua 运行的同一线程上操作其 LuaState
,例如调用 Lua 函数。这一点很重要,因为您永远不应该在另一个线程上操作 LuaState
,因为它可能导致竞争条件的发生和异常的抛出,从而导致应用程序崩溃。
此接口的实例将被提供给 CoronaRuntimeTaskDispatcher 对象的 send()
方法。该类将以线程安全的方式将任务发送到 CoronaRuntime
。
警告!此任务不会由主 UI 线程上的 CoronaRuntime
执行。CoronaRuntime
及其 Lua 脚本在单独的线程上运行。这意味着您永远不应该从此类的方法中操作Activity 的 UI 元素。
修饰符和类型 | 方法和说明 |
---|---|
void |
executeUsing(CoronaRuntime runtime)
由
CoronaRuntime 在渲染帧之前调用。 |
void executeUsing(CoronaRuntime runtime)
CoronaRuntime
在渲染帧之前调用。这是应用程序调用 Lua 函数或更新 Lua 中全局变量的机会。警告!此方法不在主 UI 线程上调用。
runtime
- 对当前正在运行的 CoronaRuntime
对象的引用。提供对其 LuaState
对象的访问。