3
于任务来说 :分为同步和异步
主要区别在于 :是否阻塞当前线程。同步会阻塞当前线程,因为他会等待当前任务完成在执行后面的任务。异步是不会的
对于队列内部的线程关系相关 :串行和并行。串行是一个一个接着执行的,对于有依赖关系的线程来说再合适不过了。并行那么就是多个线程同时进行。
常用的
- dispatch_get_main_queue 主队列
- dispatch_get_global_queue 全局并发的队列
通常的基本用法:
dispatch_async(dispatch_get_global_queue(0, 0), ^{
// 执行 耗时的任务
dispatch_async(dispatch_get_main_queue(), ^{
// 执行完成后,回到主线程 刷新UI
});
});