如何用GCD同步若干个异步调用
2015-11-05 17:34
323 查看
必须是
需求分析
首先,分别
其次,等2个异步操作都执行完毕后,再回到主线程执行一些操作
使用队列组实现上面的需求
并发队列才起作用
需求分析
首先,分别
异步执行2个耗时的操作
其次,等2个异步操作都执行完毕后,再回到主线程执行一些操作
使用队列组实现上面的需求
// 创建队列组 dispatch_group_t group = dispatch_group_create(); // 获取全局并发队列 dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); // 往队列组中添加耗时操作 dispatch_group_async(group, queue, ^{ // 执行耗时的异步操作1 }); // 往队列组中添加耗时操作 dispatch_group_async(group, queue, ^{ // 执行耗时的异步操作2 }); // 当并发队列组中的任务执行完毕后才会执行这里的代码 dispatch_group_notify(group, queue, ^{ // 如果这里还有基于上面两个任务的结果继续执行一些代码,建议还是放到子线程中,等代码执行完毕后在回到主线程 // 回到主线程 dispatch_async(group, dispatch_get_main_queue(), ^{ // 执行相关代码... }); });
相关文章推荐
- 求大神指教error C2059: syntax error : ';'怎么办
- more命令
- 笔记_Maya绑定基础_断开骨骼 And 骨骼的镜像
- Android编程判断横屏、竖屏及设置横竖屏的方法
- HTML <input> 标签
- tpcc-mysql的使用
- Maven系列--"maven-compiler-plugin"的使用
- centos 安装rabbitmq
- Spring定时器配置
- 指令 scope
- 国密SM-4算法
- pageContext,request,session,application生命周期
- django 基于proxy实现用户权限管理
- VBA说话
- 【面试题】:老鼠喝毒药(二进制编码)
- java基础关于线程
- 完美洗牌算法
- poj-1887Testing the CATCHER(LIS变形)
- 模板匹配_从图片到视频流
- Hive自身数据导出的方式