我正在使用 AsyncTask 从远程服务器获取大量缩略图并在网格视图中显示它们。问题是,我的网格视图一次显示 20 个缩略图,因此创建 20 个 AsyncTasks 并启动 20 次执行,每个缩略图一次。
I get RejectedExecution
我的代码中出现异常。我记得在某处读过,AsyncTask 一次可以在其队列中拥有的任务数量是有限的,我可能会遇到这个问题。这个栏被取消了吗?
有没有办法提高这个限制?忽略这个异常是否安全?(通过有一个空的catch(RejectedException e){}
block?)
我在 Android 1.6 模拟器上运行此代码,并且代码中的 API 级别(minSDKVersion 为 3)。
[编辑:添加了 SDK 和 API 级别信息]
我记得在某处读到过
是任务数量的限制
AsyncTask 可以在其队列中的某个位置
到时候,我可能会碰到那个。曾是
这个栏解除了?
AsyncTask
目前似乎支持 10 个线程和 10 的工作队列深度。理论上,这只会支持 20 个项目...如果没有其他东西使用AsyncTask
.
有没有办法提高这个限制?
获取源代码,修改它,将其放入您自己的包中,然后使用该包。我用我的AsyncTaskEx http://github.com/commonsguy/cwac-task,尽管这是基于 Android 1.5 源代码。
忽略这个是否安全
例外?
您的工作不会排队等待执行。这是否“安全”取决于您。我不知道有任何其他影响AsyncTask
基础设施。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)