美文网首页iOS收藏
iOS让异步变成同步

iOS让异步变成同步

作者: 大胖_康 | 来源:发表于2017-05-16 18:36 被阅读45次

      很多时候我们需要让异步里面的东西执行完之后再去执行我们想要执行的东西,这样可以实时的监控到执行的位置,避免线程不安全,我们来看看这货>>>dispatch_semaphore_t.

      dispatch_semaphore_t这个就不再解释了>>>信号.相当于我给信号你,你才能做什么事情,否则你就等着.

看一个线程不安全的例子:

代码 输出1 输出2

我们会发现先输出的是33333333333333333,然后再输出111111111和22222222222,因为AFNetWorking是异步的,输出和网络有关.然后我们用这个dispatch_semaphore_t来试下.

顺序执行

可以看到,执行的顺序永远都是111111>>>22222>>>3333333,这就是我们想要的结果

相关文章

  • iOS让异步变成同步

    很多时候我们需要让异步里面的东西执行完之后再去执行我们想要执行的东西,这样可以实时的监控到执行的位置,避免线...

  • Nodejs 让异步变成同步

    异步给我们带来的性能是明显的,但同时也给我们带了复杂的业务逻辑过程,特别请求依赖多的时候,下面我们来看看如何解决此...

  • iOS-14 线程基础

    参考 ios的线程和同步异步操作 - 简书线程 同步异步 Timer 等使用 本文主要从 1、 ios三种创建方式...

  • iOS 多线程基础

    转自:iOS 多线程基础 - 简书 多线程同步和异步的区别?IOS中如何实现多线程的同步? 异步:可以同时执行多条...

  • 关于回调的终极解决方案

    使用async和await把异步变成同步

  • iOS中通知异步?同步?

    让人很纳闷的一个问题:通知是同步的还是异步的 在iOS开发中有人问“通知是同步的还是异步的”。个人感觉问的这个问题...

  • iOS_2016最新版面试题(附答案)

    每天四道题,让精彩填满生活... 1、多线程同步和异步的区别。iOS如何实现多线程的同步? 答:同步就是指一个线程...

  • ES6 Promise 异步1

    - 异步 和 同步 promise对象: 用同步方式书写异步代码 promise 让异步写起来,像写同步一样流程...

  • iOS中的同步&异步 并行&串行

    以下是我个人对 iOS中的同步&异步 并行&串行 的理解,有不对的地方欢迎指正。 同步 异步 控制的是 “是否创建...

  • asyc/await/primise让异步变成“同步”

    asyn表示异步,用于声明一个函数是异步函数。await表示等待,用于等待一个异步方法的执行。

网友评论

    本文标题:iOS让异步变成同步

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