您的位置:首页 > 移动开发 > Swift

Swift3.0--GCD

2016-09-28 01:02 429 查看
估计现在好多人在为这一块头疼,所以先来点干货。
//最常用模板
//全局队列异步执行
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 = 3
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + delay) {
//3秒后在主线程执行
}


dispatch_block_t
在swift3.0已经没了  
dispatch_block_t
等价于
()
-> void

dispatch_queue_t
等价于
DispatchQueue


自己看语法特点

大致这么多差不多就能解决大部分问题了,其它自己根据GCD自己对号入座。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: