很久没有更新文章,在此更新一章GCD常用方法和使用场景。
1.异步并行
image.png
图中我们可以看到,队列开启了子线程,队列绕过到最后才执行。但不绝对每次都是最后才执行。异步并行的任务的先后是不一定的。
应用场景:点击了注册按钮,异步发送了请求。此时也在更新按钮的秒数。
2.异步串行
image.png
和异步并行差不多,但是异步并行的任务的先后是一定的。
应用场景:比如修改了个人信息,首先我保存到本地成功了,之后再发请求。
3.同步并行
image.png
和异步截然相反,不开启子线程。因为没有开启子线程,在主线程,所以任务的顺序是遵循FIFO。
应用场景:emmmmm,没想起来有啥应用场景😅
4.同步串行(同上)
5.异步主线
image.png
队列绕过到最后才执行。因为没有开启子线程,在主线程中的任务的顺序同样遵循FIFO
应用场景:emmmmm,没想起来有啥应用场景😅
6.同步主线
image.png
任务1在等主队列任务执行完才执行。所以两个任务互相等待,造成死锁了
应用场景:emmm,大概就是报复社会了吧。
7.Group
image.png
图中我们可以看到当任务都执行完毕后,会触发通知。
应用场景:个人资料上传多张图片成功后,再回来发送更新个人信息请求。
总结:大致的用法就这些,还是蛮方便的。不足之处请指出。
网友评论