我可以在iPhone 4上使用GCD吗?

Ben*_*ard 1 iphone cocoa-touch background-process grand-central-dispatch ios

当我在iPhone 4上测试时,我有一些代码运行缓慢.我正在考虑研究Grand Central Despatch并使用后台线程执行某些任务.但是,据我所知,iPhone 4是单核设备.这是否意味着使用后台线程在此设备上没有任何好处?

我在Apple的文档中找不到关于这方面不同设备功能的内容,也不熟悉后台处理.

Col*_*ler 7

是的,只要它运行iOS 4或更高版本.GCD是一个很好的设计,因为它可以在单核机器上使用,直到16 Core Mac Pro.事实上,Apple在介绍GCD时强调了这一点.如果您的代码编写得很好,它应该在单核iPhone以及多核iOS设备上同样有效.从理论上讲,您应该会在单核设备上看到多核设备的性能改进.

  • 单核iOS设备仍然可以从GCD中获益,同样不如多核,但仍然值得.与使用pthreads或Cocoas其他后台方法编程相比,使用GCD编程仍然更容易和简单,如果GCD可用,我甚至会在单核设备上使用它.加上GCD和块可以打开您的代码,以更好地设计模式,从而使代码更容易编写. (3认同)