博客
关于我
GCD学习之Dispatch Group
阅读量:736 次
发布时间:2019-03-22

本文共 528 字,大约阅读时间需要 1 分钟。

发送组

    在多个处理程序被添加到Dispatch Queue时,如果所有处理程序都完成后需要执行结束处理,常常会遇到这种情况。在使用单个串行Dispatch Queue时,只需将想执行的处理全部添加到该队列中,并在最后添加结束处理即可实现。但是在使用并发Dispatch Queue或同时使用多个Dispatch Queue时,源代码会变得非常复杂。

    为了解决这种情况,可以使用Dispatch Group。在下面的源代码示例中,会额外添加3个Block到Global Dispatch Queue,这些Block在全部执行完毕后,会自动执行Main Dispatch Queue中用于结束处理的Block。

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, ^{ NS dette("blk0"); }); dispatch_group_async(...);

转载地址:http://rlggz.baihongyu.com/

你可能感兴趣的文章
mysql状态分析之show global status
查看>>
mysql状态查看 QPS/TPS/缓存命中率查看
查看>>
mysql生成树形数据_mysql 实现树形的遍历
查看>>
mysql用于检索的关键字_Mysql全文搜索match...against的用法
查看>>
MySQL用得好好的,为什么要转ES?
查看>>
MySql用户以及权限的管理。
查看>>
MySQL用户权限配置:精细控制和远程访问的艺术!------文章最后有惊喜哦。
查看>>
mysql用户管理、常用语句、数据分备份恢复
查看>>
MySQL留疑问:left join时选on还是where?
查看>>
mysql登陆慢问题解决
查看>>
Mysql百万级数据查询优化
查看>>
MySQL的 DDL和DML和DQL的基本语法
查看>>
mysql的 if else , case when then, IFNULL
查看>>
MySQL的10种常用数据类型
查看>>
MySQL的btree索引和hash索引的区别
查看>>
mysql的cast函数
查看>>
MySql的CRUD(增、删、改、查)操作
查看>>
MySQL的DATE_FORMAT()函数将Date转为字符串
查看>>
mysql的decimal与Java的BigDecimal用法
查看>>
MySql的Delete、Truncate、Drop分析
查看>>