并发编程、通知机制与网络访问的深入解析
1. 后台执行操作
在并发编程中,使用 libdispatch (苹果的 Grand Central Dispatch)能有效管理工作队列,实现代码和数据的并发处理。
1.1 工作队列类型
| 队列类型 | 特点 |
|---|---|
| 并发队列 | 按添加顺序开始执行工作单元,但可能同时执行多个单元 |
| FIFO 队列 | 等待每个单元完成后再开始下一个单元 |
1.2 代码示例
dispatch_queue_t q = dispatch_get_global_queue(0,0);
__block int count;
dispatch_async(q, ^(void){ count++; });
sleep(1);
NSCAssert(count == 1, @"Counter incremented in background");
上述代码获取默认优先级的全局队列,并将一个块异步添加到该队列中执行。
1.3 工作队列与线程的关系
- 队列和线程并非一一对应,并发队列可在多个线程上执行,一个线程也可运行多个队列的
超级会员免费看
订阅专栏 解锁全文
2237

被折叠的 条评论
为什么被折叠?



