Хорошо, мне нравится Grand Central Dispatch и после его использования с относительным успехом, но это то, что я не совсем понимаю.
Предположим, что я создал свою собственную последовательную очередь, используя
dispatch_queue_t myQueue;
myQueue = dispatch_queue_create("myQueue", NULL);
После этого я делаю это:
dispatch_async(myQueue, ^{
[self doStuff1];
});
// and a few lines later...
dispatch_sync(myQueue, ^{
[self doStuff2];
});
Первая отправка - асинхронная. Итак, это будет сделано одновременно, не так ли? Как это может случиться, если myQueue является серийным? Как последовательная очередь может делать что-то параллельно или, если хотите, вышла из строя?
спасибо