美文网首页
异步请求

异步请求

作者: 情来情去情随缘 | 来源:发表于2018-01-05 21:08 被阅读0次

有a、b、c、d 4个异步请求,如何判断a、b、c、d都完成执行?如果需要a、b、c、d顺序执行,该如何实现?

对于这四个异步请求,要判断都执行完成最简单的方式就是通过GCD的group来实现:

dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);

dispatch_group_t group = dispatch_group_create();

dispatch_group_async(group, queue, ^{ /*任务a/ });

dispatch_group_async(group, queue, ^{ /

任务b/ });

dispatch_group_async(group, queue, ^{ /

任务c/ });

dispatch_group_async(group, queue, ^{ /

任务d */ });

dispatch_group_notify(group,dispatch_get_main_queue(), ^{

// 在a、b、c、d异步执行完成后,会回调这里

});

当然,我们还可以使用非常老套的方法来处理,通过四个变量来标识a、b、c、d四个任务是否完成,然后在runloop中让其等待,当完成时才退出runloop。但是这样做会让后面的代码得不到执行,直到Run loop执行完毕。

解释:要求顺序执行,那么可以将任务放到串行队列中,自然就是按顺序来异步执行了。

相关文章

  • OKHTTP

    OKHTTP 引用 权限配置 测试URL 同步请求 异步请求 异步get请求 异步测试post请求 Retrofi...

  • AFN异步单任务请求和异步多任务请求

    此处介绍AFNetingWorking 异步单任务请求和异步多任务请求的两种方式。 为什么要使用异步请求 异步请求...

  • Okhttp3

    简介 配置 请求思路 get请求思路 post请求思路 get,post 同步和异步请求 异步请求(get) 同步...

  • 1.2 网络请求-异步请求

    网络请求-异步请求

  • 基于Spring框架实现异步请求与异步调用

    一、异步请求 1.1 同步请求与异步请求 首先看一下同步请求的线程执行模型: 接着看一下异步请求的线程执行模型: ...

  • okhttp分析

    okhttp使用分为同步请求和异步请求:异步请求: request是一个请求对像,包含了请求url,methord...

  • 网络协议

    网络请求分为4类:GET同步请求GET异步请求POST同步请求POST异步请求 同步网络请求步骤: 1:创建网址字...

  • iOS原生网络请求-"连接"与"会

    1.NSURLConnection 1.1 get 异步请求 1.2 post 异步请求 1.3 post 同步请...

  • IntentService和HandlerThread

    IntentService 概述 处理异步请求的Service 客户端使用startService()发送异步请求...

  • Future函数使用

    Future常用方法: 多个网络请求同时进行: await、async模拟异步网路请求: Future模拟异步网络请求:

网友评论

      本文标题:异步请求

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