基本上我想开始一个接一个地串行执行的几个线程。我正在使用Thread.join()
。但是应用程序类型挂起和进入ANR状态。我想知道把一个AsyncTask放到一个循环中会一个接一个地执行所有的任务,还是会并行执行?循环内的AsyncTask
for(String s : list)
{
new asynctask(s).execute();
}
基本上我想开始一个接一个地串行执行的几个线程。我正在使用Thread.join()
。但是应用程序类型挂起和进入ANR状态。我想知道把一个AsyncTask放到一个循环中会一个接一个地执行所有的任务,还是会并行执行?循环内的AsyncTask
for(String s : list)
{
new asynctask(s).execute();
}
基本上我想要启动哪些 另一个之后连续依次执行的线程数。
阅读本声明后立即想到的是您应该考虑使用IntentService而不是每次创建新的任务。
基本上IntentService是
的IntentService接收经由意图,其中包括 可以完成该任务的某些信息的请求。然后将该任务 添加到队列中,然后按顺序和异步完成所有任务 。
使用IntentService
的好处是
这将保证该操作将至少有“服务过程”优先,不管发生什么情况activity.It强烈建议当你要下载多个文件顺序。
在这里你会发现很好的教程,如何实施IntentService
。
http://mobile.tutsplus.com/tutorials/android/android-fundamentals-intentservice-basics/
+1好答案。 – 2012-07-09 06:40:07
@Vipul:非常感谢。 – 2012-07-09 06:53:57
考虑使用IntentService.You可以添加Queue.Which任务的线程连续非UI就会执行。 – 2012-07-09 06:21:57