我应该使用线程来加速应用程序

时间:2010-07-27 07:20:01

标签: iphone multithreading

我有一个游戏应用程序显示许多需要在显示之前处理的图像。需要每2秒刷新一组图像。

加快显示速度:显示第一组图像时,我想在后台准备下一组图像。

我有一个特定的类“板”,我可以在后台调用它来生成“nextSet”,而播放器正在使用“currentSet”。

最好的方法是什么?

线程似乎是要做的事情...是的,我可以在哪里找到一些在后台触发该代码的代码示例?

cheeerio,

提笔。

2 个答案:

答案 0 :(得分:1)

听起来像生产者/消费者的情况。我建议你看看队列来解决这个问题。您将有一个线程在后台处理图像(生产者)并将其放入队列中。然后,通过向用户显示它们,您的UI将在准备就绪时使用它们。在iOS4中,增强了对并发相关任务的支持,Apple有一些关于该主题的优秀指南。

Concurrency Programming Guide
Grand Central Dispatch

祝你好运

答案 1 :(得分:0)

这个Threading Cocoa tutorial足以开始了。他们还有示例代码

关于问题:你应该使用NSThread。

技术上,是的,你应该。对于像这样的重型IO,在后台执行不会释放您的UI,它也会改善您的用户体验。但是,使用线程时要小心,它有数据共享,死锁等难度......