【发布时间】:2014-08-21 18:15:11
【问题描述】:
我正在使用 asyncTasks 来加载带有图像的列表元素(只是按照 android 的高效加载位图教程)
在 DDMS 中,我可以看到多达 5 个 AsyncTask 正在运行
现在我还添加了另一个 AsyncTask,它使用 MediaCodec 类执行一些解码。
现在在 DDMS 中,我仍然看到 5 个 AsyncTasks,并且我的图像加载 aynctask 或解码异步任务执行,而不是两者都执行。
解码运行时,如果我滚动列表,元素的图像不会更新 相反,当我通过调用它的 execute 方法启动新的解码异步任务时,解码不会开始,但是如果我现在滚动列表视图,图像就会更新。
那么 AsyncTask 是有限制的吗??
即使在 listAdapter 中,我也会为每个 getView 调用启动一个 AsyncTask。我希望有 7 个正在运行的 asyncTasks(例如,如果列表可见元素是 7 个),但 DDMS 显示只有 5 个正在运行的 asynctasks。
现在谁能解释一下我不会拼写的黑魔法是什么?
【问题讨论】:
标签: android android-asynctask executorservice threadpoolexecutor