我有一个游戏应用程序显示许多需要在显示之前处理的图像。需要每2秒刷新一组图像。
加快显示速度:显示第一组图像时,我想在后台准备下一组图像。
我有一个特定的类“板”,我可以在后台调用它来生成“nextSet”,而播放器正在使用“currentSet”。
最好的方法是什么?
线程似乎是要做的事情...是的,我可以在哪里找到一些在后台触发该代码的代码示例?
cheeerio,
提笔。
答案 0 :(得分:1)
听起来像生产者/消费者的情况。我建议你看看队列来解决这个问题。您将有一个线程在后台处理图像(生产者)并将其放入队列中。然后,通过向用户显示它们,您的UI将在准备就绪时使用它们。在iOS4中,增强了对并发相关任务的支持,Apple有一些关于该主题的优秀指南。
祝你好运答案 1 :(得分:0)
这个Threading Cocoa tutorial足以开始了。他们还有示例代码
关于问题:你应该使用NSThread。
技术上,是的,你应该。对于像这样的重型IO,在后台执行不会释放您的UI,它也会改善您的用户体验。但是,使用线程时要小心,它有数据共享,死锁等难度......