在 iOS 4.0 中通过 Grand Central Dispatch 加载图像(每个 1 个块)是个好主意吗?(用于 UITableView)
为什么 Apple 首选 runloop,如 WWDC 视频会话 207 和 208 所示?
在 iOS 4.0 中通过 Grand Central Dispatch 加载图像(每个 1 个块)是个好主意吗?(用于 UITableView)
为什么 Apple 首选 runloop,如 WWDC 视频会话 207 和 208 所示?
这些视频中的重点是,Foundation 网络现在还没有与 Grand Central Dispatch 很好地集成,所以如果你想做基于 Foundation 的网络,runloop 是避免传统线程问题的最佳选择。然而,在 Session 206 - “Introducing Blocks and Grand Central Dispatch on iPhone”中,你会看到他们展示了一个如何使用 GCD 来达到这个目的的例子。
我,我更喜欢 GCD,因为代码的优雅和因为(正如他们在这些视频中所述)它是未来的方式。
我还没有看过这些视频,但这是 Chris Hanson(Apple 工程师)关于 GCD 与 NSOperation 的看法
始终使用您可用的最高级别的抽象,并在测量表明需要它们时下拉到较低级别的抽象。
换句话说,您应该使用 NSOperations 进行异步处理(例如为表格视图加载图像),除非您有充分且必要的理由选择 GCD。