(iOS) dispatch_async () против NSOperationQueue
Я изучил программирование на iOS благодаря курсу Стэнфорда CS193p (в iTunes U), а также книге по программированию на iOS от ранчо Big Nerd. В обоих из них они рекомендуют использоватьdispatch_async()
, dispatch_get_main_queue()
и т. д. для обработки потоков и параллельных операций. Однако на сессии WWDC 2012 по созданию параллельного пользовательского интерфейса докладчик рекомендовал использоватьNSOperationQueue
.
Каковы различия междуdispatch_*()
а такжеNSOperationQueue
и есть ли какая-либо причина (техническая, рабочая, стилистическая или иная), которую я должен использовать один над другим? ЯвляетсяNSOperationQueue
просто оболочка Objective-C вокругdispatch_async
или есть что-то большее?