当前位置:   article > 正文

Swift5多线程系列一GCD基础篇_swift gcd异步

swift gcd异步

Swift5多线程系列-基础概念篇

iOS开发,多线程开发常用GCD,swift也如是;swift的GCD,使用比OC上更加简单易上手;



基础篇

1. 串行、并行、同步、异步


  • 串行:在本文中指串行队列,多个任务放在串行队列里执行,只能按顺序依次运行,前一个运行完成,下一个才能开始运行;前一个没运行完,后一个只能排队等着。以此类推,直到所有任务都运行完成。
  • 并行:在本文中指并行队列,多个任务放在并行队列里执行,可以同时运行。
  • 同步:在本文中指同步执行任务,是在一个线程里按顺序执行多项任务,执行结束的顺序是固定的、和任务的执行顺序相同。总耗时是所有任务耗时之和。
  • 异步:在本文中指异步执行任务,也是按顺序执行多项任务,但是是放在多个线程里同时运行,执行结束的顺序是随机的、不可预估的。总耗时大约是耗时最长的那项任务所消耗的时间。

2. DispatchWorkItem


调度工作项:其实就是一项任务,可以把你想要执行的代码写成闭包,在 DispatchWorkItem 初始化时传进去,方便后续管理任务,并且会让代码更整洁。

官网原文:The work you want to perform, encapsulated in a way that lets you attach a completion handle or execution dependencies.

调度工作项初始化,正常情况下,使用第一种方式即可(特殊情况后续会再讲解):

//1. 只带尾随闭包
let item1 = 
  • 1
本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号