GCD队列组 有时候我们会有这样的需求:分别异步执行2个耗时操作,然后当2个耗时操作都执行完毕后再回到主线程执行操作。这时候我们可以用到GCD的队列组,我们可以先把任务放到队列中,然后将队列放入队列组中,调用队列组的dispatch_group_notify回到主线程执行操作 - (void)queueGroup { //创建队列组 dispatch_group_t queueGroup = dispatch_group_create(); //执行耗时操作 dispatch_group_async(queueGroup, dispatch_get_global_queue(0, 0), ^{ //执行耗时操作1 NSLog(@"执行耗时操作1 --%@",[NSThread currentThread]); }); //执行耗时操作 dispatch_group_async(queueGroup, dispatch_get_global_queue(0, 0), ^{ //执行耗时操作2 NSLog(@"执行耗时操作2 --%@",[NSThread currentThread]); }); // 执行完成后 回到主线程 dispatch_group_notify(queueGroup, dispatch_get_main_queue(), ^{ NSLog(@"回到主线程--%@",[NSThread currentThread]); }); }//队列组