Corona SDK和Lua Socket阻止动画

时间:2014-06-27 22:02:34

标签: lua corona luasocket

这是我的网络处理程序: 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之一,还是可以修改此网络处理程序以便动画不会冻结?

1 个答案:

答案 0 :(得分:0)

如果你可以使用Corona的网络。* api,它是异步的,所以你不会有任何阻止呼叫。

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