【发布时间】:2012-03-27 08:33:51
【问题描述】:
我正在使用 asynctask 从给定的 url 获取图像。这些图像显示在列表视图中。问题是当我快速滚动列表视图时,应用程序正在崩溃。logcat 错误是
03-27 13:08:42.355: E/AndroidRuntime(25567): java.util.concurrent.RejectedExecutionException: pool=128/128, queue=10/10
从这个错误中我知道这是并行运行许多异步任务线程的问题。为了解决这个问题,我编写了以下代码。
NWTaskObj obj = new NWTaskObj();
obj.setType(AdapterType.OfferAdapter);
obj.setLink(offer.getImageLink());
obj.setObject(this);
if(count<10){
new HandleOfferImage().execute(obj);
}else{
new HandleOfferImage().cancel(true);
new HandleOfferImage().execute(obj);
}
count 是一个静态变量。它在 HandleOfferImage 类中递增。但它仍然在相同的场景中崩溃。我需要杀死之前的 asynctasks(如果 count >10),除了最后一个.我不想在这里使用惰性列表。有人可以帮我吗?
【问题讨论】:
标签: android listview android-asynctask