4、iOS开发培训并发编程指南
时间:2025-07-08
时间:2025-07-08
无限互联iOS开发培训中心
iOS并发编程指南
原著:Apple Inc.
翻译:Kevin
联系:support@http://www.77cn.com.cn
网站:http://www.77cn.com.cn
鸣谢:GungYi移动应用开发
CocoaChina社区
时间:2011-12-09
无限互联iOS开发培训中心
目录
1. 简介......................................................................................................................... 6
1.1. Dispatch Queue ............................................................................................ 6
1.2. Dispatch Sources .......................................................................................... 7
1.3. Operation Queues ........................................................................................ 8
1.4. 异步设计技术 .............................................................................................. 9 2. Operation Queues ................................................................................................... 9
2.1. Operation Objects ........................................................................................ 9
2.2. 并发 VS 非并发Operations ..................................................................... 11
2.3. 创建一个 NSInvocationOperation 对象 ................................................... 11
2.4. 创建一个 NSBlockOperation 对象 ............................................................ 12
2.5. 自定义Operation对象 .............................................................................. 13
执行主任务.................................................................................................. 14
响应取消事件.............................................................................................. 16
为并发执行配置operations ....................................................................... 17
维护KVO依从 ............................................................................................. 21
2.6. 自定义一个Operation对象的执行行为 .................................................. 23
配置operation之间的依赖关系 ................................................................ 23
修改Operation的执行优先级 ................................................................... 24
修改底层线程的优先级.............................................................................. 25
设置一个completion block ......................................................................... 26
2.7. 实现Operation对象的技巧 ...................................................................... 26
第2页 / 共85页
无限互联iOS开发培训中心
Operation对象的内存管理 ........................................................................ 26
处理错误和异常.......................................................................................... 29
2.8. 为Operation对象确定一个适当的范围 .................................................. 30
2.9. 执行Operations ......................................................................................... 30
添加Operations到Operation Queue ........................................................ 31
手动执行Operations ................................................................................... 32
取消Operations ........................................................................................... 34
等待Operations完成 .................................................................................. 35
挂起和继续Queue ...................................................................................... 36
3. Dispatch Queues ................................................................................................... 37
3.1. 简介 ............................................................................................................ 37
3.2. Queue相关的技术 .................................................................................... 38
3.3. 使用Block实现任务 ................................................................................. 39
3.4. 创建和管理Dispatch Queue ..................................................................... 41
获得全局并发Dispatch Queue ................................................................... 41
创建串行Dispatch Queue ........................................................................... 41
运行时获得公共Queue .............................................................................. 42
Dispatch Queue的内存管理 ....................................................................... 42
在Queue中存储自定义上下文信息 ......................................................... 43
为Queue提供一个清理函数 ..................................................................... 43
3.5. 添加任务到Queue .................................................................................... 44
添加单个任务到Queue .............................................................................. 44
第3页 / 共85页
无限互联iOS开发培训中心
任务完成时执行Completion Block ............................................................ 46
并发地执行Loop Iteration .......................................................................... 47
在主线程中执行任务.................................................................................. 48
任务中使用Objective-C对象 ..................................................................... 48
…… 此处隐藏:11798字,全部文档内容请下载后查看。喜欢就下载吧 ……