Я создал серийную очередь следующим образом:
dispatch_queue_t _serialQueue = dispatch_queue_create("com.example.name", DISPATCH_QUEUE_SERIAL);
Какая разница между dispatch_async
, называемым так
dispatch_async(_serialQueue, ^{ /* TASK 1 */ });
dispatch_async(_serialQueue, ^{ /* TASK 2 */ });
И dispatch_sync
вызывается так в этой последовательной очереди?
dispatch_sync(_serialQueue, ^{ /* TASK 1 */ });
dispatch_sync(_serialQueue, ^{ /* TASK 2 */ });
Я понимаю, что независимо от того, какой метод отправки используется, TASK 1
будет выполняться и завершаться до TASK 2
, исправить?