GCD 异步分组执行,当组里面的程序块运行完后在执行另外的

    //分组执行
    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
    //异步执行
    dispatch_async(queue, ^{
        dispatch_group_t group = dispatch_group_create();
        //异步
        dispatch_group_async(group, queue, ^{
            NSLog(@"哇");
            [NSThread sleepForTimeInterval:2];
        });
        
        dispatch_group_async(group, queue, ^{
            NSLog(@"哈哈");
            [NSThread sleepForTimeInterval:2];
        });
        //当group组里面的东西运行完成后,才会运行
        dispatch_group_notify(group, queue, ^{
            NSLog(@"完成");
        });
        
    });

你可能感兴趣的:(IOS,学习)