DispatchQueue –ᗧ••Lee –中

Swift快速备忘单— DispatchQueue

  • 用户负责DispatchQueue,操作系统负责基于DispatchQueue的线程
  • DispatchQueue是一个队列,它接受先进先出而不是线程的工作项。
  • 用户将workItem(closure)放入DispatchQueue
  • 使用测试
  • 具有不同QOS的全局队列

如预期的那样,即使执行时间晚于背景,也会执行.userInteractive

  • 自定义队列:串行队列

序列定制队列中的项目将顺序执行

  • 自定义队列:并发队列

不完全是最新的,但是

  • 2个自定义串行队列

好的,2个自定义串行队列在文件中并发运行。

  • 2个自定义并发队列

好的

  • 从主线程同步背景

好吧,我们什么时候使用这个

  • 来自backgound的异步main:最常见的用法
  • 所以,
  • 如果我想让某些任务在主服务器中依次运行,请使用主队列
  • 如果我希望某些任务在后台顺序运行,请放入单个自定义串行队列。
  • 如果我希望某些任务在粗略意义上并发运行,请放入全局队列。

执行延迟

  • 在线程1中

不错

  • 从thread1

不错

    Interesting Posts