1.队列的类型:
1.1主队列:main queue,主线程队列,更新UI的操作。是一个串行的队列。串行队列每次只处理一个任务,所以后一个任务必须等到前一个任务执行结束才能开始执行。
1.2系统创建的并发队列:global queue(全局的,并行的队列),按照优先级分类。线程池提供多个线程来执行任务,所以按照FIFO的顺序并发启动、执行多个并发任务。
1.3自定义的队列:可以根据需要创建串行队列或并发的队列。
2.任务:
2.1封装形式:block或C语言的的函数
2.2添加到队列的方式:同步或异步(只对并发队列有区别)。不管是同步还是异步,如果将任务加到串行队列中都是一个接一个的执行,只有在并发队列中才有区别。
3.特殊使用
3.1仅执行一次 dispatch_once
3.2延时执行 dispatch_after
3.3成组的执行任务 dispatch_group