为什么AsyncTasks不会在Android中被破坏

时间:2013-02-08 07:35:23

标签: android android-asynctask

在我的应用程序中,我每隔5秒就会不断创建一个AsyncTask。我在调试期间检查了任务,并且可以清楚地看到任务总是完成其进程并退出doInBackground方法。 onPostExecute中没有代码被执行过。然而,正如我在Eclipse中看到的那样,AsyncTask继续保留在内存中。我想也许它只会被重用于下一个循环或最终收集垃圾,但另一个被创建并继续。最终,它们会被创建并减慢系统速度。

可能是什么潜在问题?

1 个答案:

答案 0 :(得分:1)

  

AsyncTask管理使用ThreadPoolExecutor创建的线程池。它   将有5到128个线程。如果有超过5个线程,   那些额外的线程将坚持最多10秒钟之前   被删除。 (注意:这些数字是针对目前可见的开放   源代码,因Android版本而异。

     

请单独保留AsyncTask线程,

来源问题:AsyncTask threads never die