Задача Android Async медленная или я делаю что-то не так?
Вот что я делаю
Log.e("Filler", "before");
new DownloadListContent().execute("string");
Log.e("Filler", "after");
и DownloadListContent () ..
class DownloadListContent extends AsyncTask<Object, Object, Object> {
protected Void doInBackground(Object... urls) {
Log.e("Filler", "Am in doInBackground");
....
}
А вот и 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
Это за 12 секунд до появления фоновой операции.
Почему это происходит?
В то же время у меня есть другие экземпляры других классов AsyncTask, выполняющих некоторые другие сетевые задания. Влияет ли AsyncTask друг на друга?
Я действительно не могу понять это!
UPDATE
Спасибо за комментарии. Похоже, что async имеет жесткое ограничение на количество потоков, запускаемых одновременно. Это убийственно, если вам необходимо одновременно загружать несколько изображений вместе с вашими данными.
Следуя методу CommonsWare здесь я могу отделить тип asyncTask, чтобы один тип (изображения) не блокировал другой тип (данные списка).