Страницы 37 и 39 Руководства по параллельному программированию (версия PDF) кажутся противоречиями. В странице 37, фрагмент кода определяет следующие:Вызов detachNewThreadSelector: target: object: vs dispatch_async()
if (![anOp isConcurrent])
[anOp start];
else
[NSThread detachNewThreadSelector:@selector(start) toTarget:anOp withObject:nil];
Это выглядит хорошо, за исключением того, что в странице 39 к документации состояния:
Вы можете использовать очереди отправки для выполнения почти всех задач, , который вы использовали для отдельных потоков. Преимущество очередей заключается в том, что они более просты в использовании и намного эффективнее при выполнении , выполняющих эти задачи, чем соответствующий код с резьбой.
Таким образом, вместо вызова detachNewThreadSelector: target: object :, почему вместо этого не вызывает вызов dispatch_async()?
С прошивкой 4, NSOperationQueue использует НОД. [Справочник по классу NSOperationQueue] (http://developer.apple.com/library/ios/#documentation/Cocoa/Reference/NSOperationQueue_class/Reference/Reference.html) – titusmagnus
Я стою исправлен, спасибо titusmagnus – geminiCoder