带有取消请求的多个http请求

时间:2014-09-06 13:26:42

标签: java android multithreading http https

我正在创建一个Android应用,需要制作一些并行HTTP / HTTPS请求(正好是10个)。

第一步

如何在android中创建此并行请求?

是否可以同时使用HTTP和HTTPS?

Obs:在Google搜索,我找到了ExecutorService。我可以在android中使用它吗? (有人有例子吗?)

第二步

如果有人帮助解决了第一个问题,我将会遇到以下情况:

1 request one started   -- (working) --> cloud
2 request two started   -- (working) --> cloud
3 request three started -- (working) --> cloud

在几秒钟之后,第2个线程是第一个说'我完成了我的工作,这是页面的响应',第1和第3个线程正在工作。

如何停止/杀死第1和第3个线程?

1 个答案:

答案 0 :(得分:1)

  1. 是的,您可以使用ExecutorService

    ExecutorService executorService = Executors.newFixedThreadPool(n);

  2. 然后使用submit函数执行任务

    executorService.submit(Runnable task);
    

    但不能保证所有任务都会同时执行,这取决于可用的资源。

    2。 你可以关闭游泳池;

    executorService.shutdown();
    

    但除了尽力尝试停止处理主动执行任务之外,没有任何保证。

    如果你想使用asyncTask,请注意: 从HONEYCOMB开始,任务在单个线程上执行,以避免由并行执行引起的常见应用程序错误。

    所以在单个线程上执行的任务不是几个线程