Swift GCD

参考链接

主线程
DispatchQueue.main.async {
    NSLog("\(Thread.current)")
}
串行队列
  • 同步依次执行,在主线程依次执行
let queue = DispatchQueue(label: "test")
for i in 0..<10 {
    queue.sync {
        NSLog("\(Thread.current) -- \(i)")
     }
}
  • 同步依次执行,在同一个线程执行
let queue = DispatchQueue(label: "test")
for i in 0..<10 {
    queue.async {
        NSLog("\(Thread.current) -- \(i)")
     }
}
并行队列
  • 创建多个线程,执行顺序不确定
let queue = DispatchQueue(label: "test", qos: .default, attributes: .concurrent, autoreleaseFrequency: .inherit, target: nil)
for i in 0..<10 {
    queue.async {
        NSLog("\(Thread.current) -- \(i)")
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本篇文章介绍的是在Swift3语言下的GCD应用操作,针对的目标读者可以是没有GCD基础的初学者,也可以是对GCD...
    撸码是一种情怀阅读 9,651评论 0 12
  • 1. GCD 简介 GCD是苹果开发的多线程编程的解决方案,通过简单的API就可以实现创建新线程去执行我们需要执行...
    幻梦者8805阅读 3,434评论 0 4
  • 并行和并发 GCD简介 GCD的任务 GCD的队列 GCD创建队列或获取队列的方法 任务的执行方式:同步执行(同步...
    拧发条鸟xds阅读 2,767评论 0 1
  • 一、DispatchQueue DispatchQueue 分为串行和并发,它的完整初始化方法为: 可见,这些参数...
    西南柯北阅读 9,510评论 1 13
  • 2018621 夏至午间聚, 佳肴共妙语。 清风有故交, 生日庆如许。
    飞雪姐姐阅读 4,191评论 2 6