dispatch_apply&dispatch_suspend&dispatch_resume使用
第一、dispatch_apply 是同步函数,会阻塞当前线程直到所有循环迭代执行完成。当提交到并发queue时,循环迭代的执行顺序是不确定的
示例:
dispatch_queue_t queue=dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_apply(10, queue, ^(size_t index) {
NSLog(@"%zu",index);
});
执行结果:
8 1 2 4 5 3 9 0 7 6
因为dispatch_apply会等待处理执行结束,因此推荐在dispatch_asyn函数中执行dispatch_apply
第二、dispatch_suspend挂起指定的dispatch_queue
第三、dispatch_resume恢复指定的dispatch_queue
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。