GCD中的dispatch_apply的用法及作用(一)dispatch_apply的基本用法dispatch_apply函数是dispatch_sync函数和Dispatch Group的关联API,该函数按指定的次数将指定的Block追加到指定的Dispatch Queue中 ...
GCD中的dispatch_apply的用法及作用
(一)dispatch_apply的基本用法
dispatch_apply函数是dispatch_sync函数和Dispatch Group的关联API,该函数按指定的次数将指定的Block追加到指定的Dispatch Queue中,并等到全部的处理执行结束
1 /*! 2 * @brief dispatch_apply的用法 3 */ 4 - (void)dispatchApplyTest1 { 5 //生成全局队列 6 dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); 7 8 9 /*! dispatch_apply函数说明10 *11 * @brief dispatch_apply函数是dispatch_sync函数和Dispatch Group的关联API12 * 该函数按指定的次数将指定的Block追加到指定的Dispatch Queue中,并等到全部的处理执行结束13 *14 * @param 10 指定重复次数 指定10次15 * @param queue 追加对象的Dispatch Queue16 * @param index 带有参数的Block, index的作用是为了按执行的顺序区分各个Block17 *18 */19 dispatch_apply(10, queue, ^(size_t index) {20 NSLog(@"%zu", index);21 });22 NSLog(@"done");23 24 /*!25 * @brief 输出结果26 *27 2016-02-25 19:24:39.102 dispatch_apply测试[2985:165004] 028 2016-02-25 19:24:39.102 dispatch_apply测试[2985:165086] 129 2016-02-25 19:24:39.104 dispatch_apply测试[2985:165004] 430 2016-02-25 19:24:39.104 dispatch_apply测试[2985:165004] 531 2016-02-25 19:24:39.104 dispatch_apply测试[2985:165004] 632 2016-02-25 19:24:39.103 dispatch_apply测试[2985:165088] 333 2016-02-25 19:24:39.104 dispatch_apply测试[2985:165004] 734 2016-02-25 19:24:39.105 dispatch_apply测试[2985:165004] 835 2016-02-25 19:24:39.105 dispatch_apply测试[2985:165004] 936 2016-02-25 19:24:39.102 dispatch_apply测试[2985:165087] 237 2016-02-25 19:24:39.105 dispatch_apply测试[2985:165004] done38 * !!!因为在Global Dispatch Queue中执行,所以各个处理的执行时间不定39 但done一定会输出在最后的位置,因为dispatch_apply函数会等待所以的处理结束40 */41 }
海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com
原标题:GCD中的dispatch_apply的用法及作用
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。