美文网首页
GCD 同步+串行和同步+主队列的疑惑

GCD 同步+串行和同步+主队列的疑惑

作者: Jack_Dou | 来源:发表于2018-03-23 10:42 被阅读20次

gcd详解转发

新的读者可能在 同步执行+串行队列 与 同步执行+主队列 (前者可以正常执行,后者产生死锁)会产生疑问

两者的相同地方则都是同步执行不具备开启线程的能力,可以理解为只有一条线程(主线程);

但是例如链接里面的例子- (void)syncMain{};这个方法可以想成是加载到了主线程的主队列里(主队列也是串行队列);其他方法同理;这里说的方法不是方法里的“任务”;

当 同步执行+主队列 这种模式下启动任务时,相当于把任务一又给添加到了主队列里,而且主队列是同步执行,也就相当于syncMain方法在主队列里执行的时候又给主队列加了一个新的任务(任务一),新加的任务一需要syncMain方法完事之后在执行,可syncMain也在等待任务一执行,所以造成了相互等待(死锁);

相关文章

  • 多线程

    iOS中的几种多线程GCD1、GCD分为任务和队列,任务(同步,异步)队列(串行,并发),同步串行,同步主队列的情...

  • 关于GCD总结

    什么是GCD 理解串行、并发及同步异步 串行和并发 同步和异步 队列 串行队列 两者等效.2)使用主队列(在主队列...

  • 关于多线程GCD 串行/并行、同步/异步

    一、GCD串行/并行队列创建 串行队列: 并行队列: 二、GCD串行/并行队列同步/异步执行 执行内容1: 执行结...

  • GCD 同步+串行和同步+主队列的疑惑

    gcd详解转发 新的读者可能在 同步执行+串行队列 与 同步执行+主队列 (前者可以正常执行,后者产生死锁)会产生...

  • IOS多线程总结

    目录 简述 NSThread GCD操作与队列异步操作并行队列同步操作并行队列同步操作串行队列异步操作串行队列队列...

  • GCD学习总结

    GCD容易混淆的概念 任务,同步,异步 ,串行队列,并发队列 任务就是要做的事情 同步和异步是用来执行任务的 串行...

  • iOS - 多线程(二) GCD讲解

    目录: 1.GCD简介2.串行队列 + 同步执行3.串行队列 + 异步执行4.并发队列 + 同步执行5.并发队列 ...

  • 06进阶之路-多线程管理

    1. GCD相关 学习链接 GCD 简介 (多核编程管理线程) GCD 任务和队列(同步和异步任务 并发和串行队列...

  • 2021--- GCD

    gcd同步,异步,串行队列,并发队列,全局队列,主队列,以及死锁。 1、gcd队列阻塞问题[https://www...

  • 队列dispatch_queue的使用

    队列分为:串行队列、并发队列和主队列,主队列也叫特殊串行队列,是GCD自带的。 任务的执行分为:同步执行和异步执行...

网友评论

      本文标题:GCD 同步+串行和同步+主队列的疑惑

      本文链接:https://www.haomeiwen.com/subject/tkvtcftx.html