标签:
<!doctype html>
多线程实现方案之GCD
GCD是底层是一种C语言,主要是替代NSthread等线程技术
GCD是苹果公司为多核的并行运算提出的解决方案
GCD会自动管理线程的生命周期(创建线程、调度任务、销毁线程
程序员只需要告诉GCD想要执行什么任务,不需要编写任何线程管理代码
执行的步骤
将(任务)添加到队列中,GCD会自动将队列中的任务取出,放到对应的线程中执行
任务的取出遵循队列的FIFO原则:先进先出,后进后出
只决定只在当前的线程中执行任务
dispatch_sync(dispatch_queue_t queue, dispatch_block_t block);
可以具备开线程的能力
dispatch_async(dispatch_queue_t queue, dispatch_block_t block);
全局队列
注意:并发队列之后在异步函数中才有效
串行队列 知识决定 将队列中的任务取出后,放在线程中,是有序的执行的
添加进主队列的任务都是在主线程中执行的
异步函数 + 串行队列 会创建一个子线程 ,并且执行这些任务是有序的
标签:
原文地址:http://www.cnblogs.com/mshong1616/p/5074709.html