博客
关于我
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/

你可能感兴趣的文章
nullnullHuge Pages
查看>>
NullPointerException Cannot invoke setSkipOutputConversion(boolean) because functionToInvoke is null
查看>>
null可以转换成任意非基本类型(int/short/long/float/boolean/byte/double/char以外)
查看>>
Numix Core 开源项目教程
查看>>
NumPy 或 Pandas:将数组类型保持为整数,同时具有 NaN 值
查看>>
numpy 或 scipy 有哪些可能的计算可以返回 NaN?
查看>>
numpy 数组 dtype 在 Windows 10 64 位机器中默认为 int32
查看>>
numpy 数组与矩阵的乘法理解
查看>>
NumPy 数组拼接方法-ChatGPT4o作答
查看>>
numpy 用法
查看>>
Numpy 科学计算库详解
查看>>
Numpy.fft.fft和numpy.fft.fftfreq有什么不同
查看>>
Numpy.ndarray对象不可调用
查看>>
numpy、cv2等操作图片基本操作
查看>>
numpy判断对应位置是否相等,all、any的使用
查看>>
Numpy如何使用np.umprod重写range函数中i的python
查看>>
numpy数组替换其中的值(如1替换为255)
查看>>
numpy数组索引-ChatGPT4o作答
查看>>
numpy转PIL 报错TypeError: Cannot handle this data type
查看>>
NutzCodeInsight 2.0.7 发布,为 nutz-sqltpl 提供友好的 ide 支持
查看>>