我想知道同时执行多个网络任务的最佳决策是什么。我的情况如下:-我的列表视图上有几个单词(最多 20 个)。我想同时搜索所有这些单词,同时在我的屏幕上显示“加载”进度对话框。现在,我希望操作尽快完成。
我在想两件事:- i。为每个请求生成几个异步任务。ii. 使用服务。
请帮我做决定。
我想知道同时执行多个网络任务的最佳决策是什么。我的情况如下:-我的列表视图上有几个单词(最多 20 个)。我想同时搜索所有这些单词,同时在我的屏幕上显示“加载”进度对话框。现在,我希望操作尽快完成。
我在想两件事:- i。为每个请求生成几个异步任务。ii. 使用服务。
请帮我做决定。
您可以使用 Executor 来运行多个任务。
http://developer.android.com/reference/java/util/concurrent/Executor.html。
还要在下面的链接中检查 ExecutorService
http://developer.android.com/reference/java/util/concurrent/ExecutorService.html
asynctask 的替代方案是 RoboSpice。异步运行。可以处理多个香料请求。在 UI 线程上更新 UI。有关更多详细信息,请查看以下链接
https://github.com/octo-online/robospice
编辑:
http://developer.android.com/reference/android/os/AsyncTask.html
检查执行顺序主题
从上面的链接引用
如果你真的想要并行执行,你可以使用 THREAD_POOL_EXECUTOR 调用 executeOnExecutor(java.util.concurrent.Executor, Object[])
从 HONEYCOMB 开始,任务在单个线程上执行,以避免并行执行导致的常见应用程序错误。