dispatch_barrier_async的作用是什么?
来源:互联网 发布:https的端口 编辑:程序博客网 时间:2024/04/28 10:14
在并行队列中,为了保持某些任务的顺序,需要等待一些任务完成后才能继续进行,使用 barrier 来等待之前任务完成,避免数据竞争等问题。dispatch_barrier_async
函数会等待追加到Concurrent Dispatch Queue并行队列中的操作全部执行完之后,然后再执行dispatch_barrier_async
函数追加的处理,等 dispatch_barrier_async
追加的处理执行结束之后,Concurrent Dispatch Queue才恢复之前的动作继续执行。
打个比方:比如你们公司周末跟团旅游,高速休息站上,司机说:大家都去上厕所,速战速决,上完厕所就上高速。超大的公共厕所,大家同时去,程序猿很快就结束了,但程序媛就可能会慢一些,即使你第一个回来,司机也不会出发,司机要等待所有人都回来后,才能出发。dispatch_barrier_async
函数追加的内容就如同 “上完厕所就上高速”这个动作。
(注意:使用 dispatch_barrier_async
,该函数只能搭配自定义并行队列dispatch_queue_t
使用。不能使用: dispatch_get_global_queue
,否则dispatch_barrier_async
的作用会和 dispatch_async
的作用一模一样。 )
0 0
- dispatch_barrier_async的作用是什么?
- dispatch_barrier_async的使用
- dispatch_barrier_async 隐藏的坑
- dispatch_barrier_async
- dispatch_barrier_async
- dispatch_barrier_async
- dispatch_barrier_async
- dispatch_barrier_async和dispatch_apply的使用
- dispatch_barrier_async和dispatch_barrier_sync的使用
- 数据库的作用是什么
- 路由器的作用是什么?
- SetCompatibleTextRenderingDefault的作用是什么?
- SetCompatibleTextRenderingDefault的作用是什么?
- JNDI的作用是什么
- SoapHeader 的作用是什么
- 委托的作用是什么
- @RequestParam的作用是什么
- g_signal_connect_swapped的作用是什么?
- ISCC2012信息安全对抗竞赛题目分析
- 《Android开发技术周报》笔记
- 控制kobuki底盘(一)
- Oracle OS认证与口令文件认证详解
- angular-file-upload 中文API
- dispatch_barrier_async的作用是什么?
- 0ops CTF/0CTF writeup
- 设计模式 一一一 单例模式
- iOS系统开发:发“彩信”
- 欢迎使用CSDN-markdown编辑器
- 圆方参数化之坐标认识()
- swift思维导图
- apache 与 tomcat 服务器的三种连接配置方式
- 大学尾声