好的,我喜欢 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 是串行的,那怎么可能?串行队列如何并行执行操作,或者,如果您愿意,可以乱序执行?
谢谢