wea*_*ire 2 java android android-asynctask
android异步任务是否缓慢或我做错了什么?
这就是我做的
Log.e("Filler", "before");
new DownloadListContent().execute("string");
Log.e("Filler", "after");
Run Code Online (Sandbox Code Playgroud)
和DownloadListContent()..
class DownloadListContent extends AsyncTask<Object, Object, Object> {
protected Void doInBackground(Object... urls) {
Log.e("Filler", "Am in doInBackground");
....
}
Run Code Online (Sandbox Code Playgroud)
这是logCat.
03-15 23:18:**47**.598: E/Filler(17150): before
03-15 23:18:**47**.598: E/Filler(17150): after
03-15 23:18:**59**.789: E/Filler(17150): Am in doInBackground
Run Code Online (Sandbox Code Playgroud)
那是在背景发生前12秒.为什么会这样?
在平均时间我有其他情况下其他类的AsyncTask的做一些其他的网络工作.AsyncTask会影响另一个吗?
我真的无法想出那一个!
UPDATE
谢谢你的意见.似乎async对同时运行多少个线程有一个硬性限制.如果您必须同时下载一堆图像与数据,这是一个杀手.
遵循CommonsWare的方法,我可以分离asyncTask的类型,以便一种类型(图像)不会阻止其他类型(列表数据).
对,它确实有有限的线程池.在Honeycomb上,池大小为1,因此您不能同时拥有两个任务.您可以提供自己的执行程序,以便并行运行多个任务.但这可能无法提高性能,所以您应该考虑重构代码:
| 归档时间: |
|
| 查看次数: |
5401 次 |
| 最近记录: |