IOS GCD queue group

来源:互联网 发布:python readline函数 编辑:程序博客网 时间:2024/05/18 01:58

 dispatch_queue_t queue =dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0);

   dispatch_group_t group = dispatch_group_create();

   dispatch_group_async(group, queue, ^{

       NSLog(@"1");

    });

    

   dispatch_group_async(group, queue, ^{

       NSLog(@"2");

    });

    

   dispatch_group_async(group, queue, ^{

       NSLog(@"3");

    });

    

   dispatch_group_notify(group, queue, ^{

       NSLog(@"update UI");

    });


运行多次,你会发现,1,2,3 输出的顺序不一致,但是 不论他们输出顺序是什么样子的,updateUI这个方法一定是在这些输出之后;也就是说,group的异步会并发执行,等到都执行完毕,在用notify来操作。


最典型的例子,请求碎片图片,在组合成一张图。我们可以把组合图片资源的动作放到notify里面操作。



0 0
原创粉丝点击