【问题标题】:Corona SDK and Lua Socket blocks animationCorona SDK 和 Lua Socket 阻止动画
【发布时间】:2015-01-06 17:18:39
【问题描述】:

这是我的网络处理程序: https://gist.github.com/anonymous/22fc110ad126ef3a2c5f

问题是当接收到数据时它会阻止我的动画(当请求数据时我有一个轮子旋转)所以看起来应用程序已经崩溃,然后在 1 秒或 2 秒后,当接收到数据时,它就像一个魅力。

这行似乎确保在等待答复时应用不会死机:

local input,output = socket.select( { self.sock }, nil, 0 ) -- this is a way not to block runtime while reading socket. zero timeout does the trick

这是另一个超时设置:

 self.sock:settimeout(0)

我尝试将它们更改为 0.01 和 0.001,但没有成功。我不太确定如何制作,以免动画冻结。

也许我应该更改为 Coronas 内置的异步网络处理程序之一(带有回调函数),或者是否可以修改此网络处理程序以使动画不会冻结?

【问题讨论】:

    标签: lua coronasdk luasocket


    【解决方案1】:

    如果你可以使用 Corona 的 network.* api,它是异步的,所以你不会有任何阻塞调用。

    文档链接:http://docs.coronalabs.com/daily/api/library/network/index.html

    【讨论】:

      猜你喜欢
      • 2016-04-05
      • 2013-06-04
      • 2017-04-24
      • 2012-05-08
      • 2014-01-28
      • 2016-03-21
      • 1970-01-01
      • 2013-03-23
      • 2019-06-15
      相关资源
      最近更新 更多