iOS 深入浅出,代码详解多线程GCD的使用方法
作者:
莜12138 | 来源:发表于
2019-04-13 21:57 被阅读18次
刚刚裸辞,最近在找工作,目前正在回顾基础知识,看到多线程的时候忍不住想整理一下,就写了一份代码详细分析了GCD的几种情况和使用方式。
首先我们先来了解一下GCD的几个名词,同步-异步,主队列-全局队列-串行队列-并行队列。
直接上图:
![](https://img.haomeiwen.com/i2068624/2bd7428e89565dc2.png)
image.png
看代码吧
![](https://img.haomeiwen.com/i2068624/5b7de148ba211d74.png)
image.png
![](https://img.haomeiwen.com/i2068624/31267d531128cf6f.png)
image.png
全局队列中执行同步或者异步任务
![](https://img.haomeiwen.com/i2068624/53a821a4510a2aec.png)
image.png
![](https://img.haomeiwen.com/i2068624/1cd7ef09e145b54b.png)
image.png
输出结果:
![](https://img.haomeiwen.com/i2068624/8f7545a9b9dd75fa.png)
image.png
在串行队列中执行同步或异步任务
![](https://img.haomeiwen.com/i2068624/9118fac9ed6e349b.png)
image.png
![](https://img.haomeiwen.com/i2068624/df1c23a52ff58dea.png)
image.png
输出结果:
![](https://img.haomeiwen.com/i2068624/17ccb6d2a782052c.png)
image.png
并行队列中执行同步或者异步任务
![](https://img.haomeiwen.com/i2068624/1f8daaadf1c01543.png)
image.png
![](https://img.haomeiwen.com/i2068624/20e3de5a907e24e4.png)
image.png
输出结果:
![](https://img.haomeiwen.com/i2068624/38aa07db9c9a9cbf.png)
image.png
dispath_group_async:
![](https://img.haomeiwen.com/i2068624/f7b0b012c21916b9.png)
image.png
输出结果:
![](https://img.haomeiwen.com/i2068624/ad40810c238bbe98.png)
image.png
dispath_barrier_async:
![](https://img.haomeiwen.com/i2068624/b66c1971db090c6a.png)
image.png
输出结果(注意看打印的时间):
![](https://img.haomeiwen.com/i2068624/96d2a3b815a94069.png)
image.png
本文标题:iOS 深入浅出,代码详解多线程GCD的使用方法
本文链接:https://www.haomeiwen.com/subject/skfdwqtx.html
网友评论