Corona / Lua可以以任何方式利用移动设备上的多个核心吗?

时间:2014-10-24 10:32:41

标签: lua corona

Corona / Lua可以以任何方式利用移动设备上的多个核心吗? 你能在另一个"线程"中进行计算吗? (我有很多计算无法轻易优化)

3 个答案:

答案 0 :(得分:2)

没有。至少目前,Corona是单线程的。

我想你可以尝试使用Corona Enterprise的东西与原生的iOS& Java,但你必须自己做饭#34;。

答案 1 :(得分:0)

简短的回答是,在Corona中似乎无法做到这一点,但其他答案部分错误或不完整:

Corona本身是单线程的。所以你有两个主要的选择:coroutines和Lua lanes:

  1. 协同程序都在同一个线程中运行(所以单核)但是当任务可以细分为小块工作时它们很有用,然后多个任务可以看似并行运行。
  2. Lanes使用本机线程,如果可能,操作系统将在多个核心上运行。然而,Corona目前似乎并不支持Lua Lanes。

答案 2 :(得分:-1)

即使在Corona中也可以使用协同程序:

一个例子,把它放在你的main.lua某处:

co = coroutine.create(function ()
           print("hi")
         end)

print (co)

coroutine.resume(co)

参考:

http://www.lua.org/pil/9.html

http://www.lua.org/pil/9.1.html