本文共 708 字,大约阅读时间需要 2 分钟。
估计现在好多人在为这一块头疼,所以先来点干货。
//最常用模板//全局队列异步执行DispatchQueue.global().async { //耗时操作 DispatchQueue.main.async { //回到主线程 }}
//创建新队列DispatchQueue(label: "newQueue", attributes: .concurrent, target: nil).async { //并行队列异步执行}
//创建新队列DispatchQueue(label: "newQueue", attributes: .concurrent, target: nil).async { //并行队列同步执行}
//创建新队列DispatchQueue(label: "newQueue").async { //串行队列异步执行}
//创建新队列DispatchQueue(label: "newQueue").sync { //串行队列同步执行}
let delay:TimeInterval = 3DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + delay) { //3秒后在主线程执行}
dispatch_block_t
在swift3.0已经没了 dispatch_block_t
等价于() -> void
dispatch_queue_t
等价于DispatchQueue
自己看语法特点 大致这么多差不多就能解决大部分问题了,其它自己根据GCD自己对号入座。 转载地址:http://bayti.baihongyu.com/