美文网首页
GCD 组队列学习小结

GCD 组队列学习小结

作者: 马路边的油酥饼 | 来源:发表于2017-02-09 16:15 被阅读0次

使用场景:网络下载图片,全部图片下载完成后 加载到界面

创建组队列,创建全局队列,回去住队列

将异步任务添加到全局并发队列,将全局并发队列添加到组队列,组队列使用notify进行监视,当组队列中的所有异步任务完成后执行notify里面的代码

func groupQueen(){

//创建队列组

let group = DispatchGroup()

//创建全局队列

let globelQueen = DispatchQueue.global(qos:DispatchQoS.QoSClass.default)

//创建主队列

let main = DispatchQueue.main

//异步执行任务1

globelQueen.async(group:group) {

sleep(5)

print("并行执行任务1")

}

//异步执行任务2

globelQueen.async() {

print("并行执行任务2")

}

//任务1、2执行完成之后,回到主线程

group.notify(qos: DispatchQoS.default, flags: DispatchWorkItemFlags.detached, queue: main) {

print("任务完成了")

}

}

相关文章

网友评论

      本文标题:GCD 组队列学习小结

      本文链接:https://www.haomeiwen.com/subject/wgxwittx.html