循环中的AsyncTask

时间:2012-07-09 06:19:14

标签: android multithreading android-asynctask threadpool

基本上我想要启动一些一个接一个地串行执行的线程。我正在使用Thread.join()。但应用类型在ANR状态下挂起并进入。我想知道将一个AsyncTask放在一个循环中将一个接一个地串行执行所有任务,或者它们将并行执行???

for(String s : list)
{
    new asynctask(s).execute();
}

1 个答案:

答案 0 :(得分:2)

  

基本上我想要启动一些后续串行执行的线程   另一个。

在阅读此声明后,我立即想到这一点。您应该考虑使用IntentService而不是每次都创建新任务。

基本上是IntentService

  

IntentService通过Intent接收请求,其中包括   有关要完成的任务的一些信息。那么这个任务就是   添加到队列中,然后完成所有任务   顺序和异步。

使用IntentService的优点是

无论活动发生什么,它都将保证操作至少具有“服务进程”优先级。强烈建议您按顺序下载多个文件。

在这里,您将找到有关如何实施IntentService的非常好的教程。

http://mobile.tutsplus.com/tutorials/android/android-fundamentals-intentservice-basics/