swift中的多任务功能



我正在制作一个游戏,该游戏涉及在玩家向左或向右行走时加载块,然而,我目前用于加载块的框架涉及一个大的for循环。问题是,每当加载一个区块时,游戏就会在浏览该列表时停顿一秒钟。有没有办法把这个功能推到后台,这样它就可以运行了,而且主游戏在等待完成时不必停滞!

如果在swift中有任何其他形式的同时运行代码块或函数,我很乐意尝试将它们应用到我的游戏中。我对多线程和多核工作非常陌生,所以任何帮助都将不胜感激

假设您是为苹果平台开发的,您应该研究GCD(Grand Central Dispatch(。Swift还没有本地并发支持。(它在计划中,但尚未添加到lanugage中(

这个想法是,您将向后台调度队列提交一个块,用于您的";重型起重";数据处理。在这个块中,你可以循环浏览你的数据,然后使用DispatchQueue.main.async {<code>}将你的数据发送到主线程进行显示(UIKit代码永远不应该从后台线程执行。(

相关内容

  • 没有找到相关文章

最新更新