欢迎光临朱凯的个人博客!
朱凯,a3.work

主线程同步执行死锁及解决

 发布时间: 2017-12-23 18:42      原创:  朱凯      评论: .       .人查看

GCD直接执行主队列,会造成死锁

//主线程和主队列相互等待,造成死循环
dispatch_sync(dispatch_get_main_queue(), ^{
  if (doneBlock) {
    doneBlock();
  }
});

解决: 放入在子线程中

dispatch_async(dispatch_get_global_queue(0, 0), ^{
  dispatch_sync(dispatch_get_main_queue(), ^{
    if (doneBlock) {
      doneBlock();
    }
  });
});

转载请注明来源:   主线程同步执行死锁及解决  - 朱凯博客

分享是一种快乐,也是一种美德:
¥打开支付宝,扫码领红包¥ 红包

支付宝 aliPay

微信 wxPay