GCD编程简介dispatch_group_async
2014-04-11 15:44
253 查看
一、用 GCD 将任务分组
GCD让我们创建组,这些组允许你把任务放到一个位置,然后全部运行,运行结束后Tags: dispatch_async, dispatch_group_t, GCD
会从 GCD 收到一个通知。这一点有很多有价值的用途。例如,假设你有一个 UI-Base APP,想在 UI 上重新加载组件。你有一个表格视图,一个滚动视图,一个图片视图,就要 用这些方法加载这些组建的内容.
在 GCD 中使用组的时候你应该知道 4 个函数:
dispatch_group_create
创建一个组句柄。一旦你使用完了这个组句柄,应该使用 dispatch_release 函数将其释 放。
dispatch_group_async
在一个组内提交一个代码块来执行。必须明确这个代码块属于哪个组,必须在哪个派送队列上执行。
dispatch_group_notify
允许你提交一个 Block Object。一旦添加到这个组的任务完成执行之后,这个 Block Object 应该被执行。这个函数也允许你明确执行 Block Object 的分派队列。
dispatch_release这个函数释放那任何一个你通过 dispatch_group_create 函数创建的分派小组。
1、dispatch_group_async
利用 GCD,你可以创建你自己的串行分派队列,串行调度队列按照先入先出(FIFO)的原则运行它们的任务。然而,串行队列上的异步任务不会在主 线程上执行,这就使得串行队列极需要并发 FIFO 任务。所有提交到一个串行队列的同步 任务会在当前线程上执行,在任何可能的情况下这个线程会被提交任务的代码使用。但是提 交到串行队列的异步任务总是在主线程以外的线程上执行
相关文章推荐
- GCD编程dispatch_sync(同步)和dispatch_async(异步)方式执行并发队列任务区别
- GCD 信号量控制并发(dispatch_semaphore)以及dispatch_group_async
- GCD入门介绍四---- dispatch_group_async和dispatch_barrier_async
- iOS Socket/Tcp编程 GCDAsyncSocket的实战(带回调)
- Waiting on Groups of Queued Tasks (dispatch_group_async)
- GCD(三) ---- dispatch_group 调度群组
- iOS系统GCD学习(4):dispatch_group2
- Grand Central Dispatch(GCD)编程基础
- GCD 学习(四) dispatch_group
- GCD学习之Dispatch Group
- GCD 第一篇 dispatch_async;dispatch_sync;dispatch_async_f;dispatch_sync_f
- Grand Central Dispatch(GCD)编程基础
- dispatch_async的简单使用要点(GCD)
- iOS学习笔记5-GCDAsyncUdpSocket中的dispatch_queue_set_specific
- GCD高级用法(二) dispatch_group
- GCD学习之dispatch_barrier_async
- 完整详解swift GCD系列(三)dispatch_group
- GCD简介三:Dispatch Sources
- GCD学习笔记(六):Dispatch Group
- GCD dispatch_async dispatch_get_main_queue