如何在Android中有效管理多个异步任务

我有一个场景,我将必须对服务器进行六个http调用才能获取六个不同项目的数据。这些服务器调用不能合并,并且它们就是那样。例如:如果您需要GOOGLE的报价信息,则向服务器发送请求,以请求google的报价信息。接下来,如果您需要Yahoo,则可以发起另一个http调用,依此类推。

情况如下:

  1. 现在,我的最终用户想要比较6家不同的公司。
  2. 正如我提到的那样,我不可避免地要使用6个异步任务进行6个http调用。
  3. 收到每个异步任务响应后,我将使用新数据刷新UI。
  4. 如果我在很短的时间内刷新UI 6次,那将是糟糕的UI体验。
  5. 它给我的UI带来了不希望的闪烁效果。

我的问题:

  1. 在获得所有6个异步任务响应之前,如何阻止刷新UI?
  2. 我了解每个任务都是相互独立的。我是否应该运行while循环并等待直到获得所有响应?
  3. 有没有比while循环更好的方法了,因为如果任何一个呼叫都没有响应,那么我将永远等待。

注意:我猜Android 1.6+确实可以并行执行Async任务。

这更多是一个设计问题,对此我将不胜感激。

提前致谢

回答:

我发现此解决方案更适合我的问题。此链接描述了建立此链接的几种方法。1. ExecutorService 2.

ExecutoreService和CountDownLatch

ExecutoreService和CountDownLatch

以上是 如何在Android中有效管理多个异步任务 的全部内容, 来源链接: utcz.com/qa/412079.html

回到顶部