Android 4.0 asynctask одновременно невозможно - PullRequest
7 голосов
/ 04 января 2012

У меня та же проблема Запуск нескольких AsyncTasks одновременно - не возможно? кроме того, что я использую Android 4.0 с Android: minSdkVersion = "14".

Я попробовал его пример, и получил также:

bar bar bar
bar bar bar
bar bar bar

РЕДАКТИРОВАТЬ:

Я нашел решение здесь

Вместо использования:

task.execute();

использование:

task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, null);

1 Ответ

6 голосов
/ 06 сентября 2012

Звучит так, как это объясняет (из документации ):

При первом представлении AsyncTasks выполнялись последовательно в одном фоновом потоке. Начиная с DONUT, это было изменено на пул потоков, позволяющий нескольким задачам работать параллельно. Начиная с HONEYCOMB, задачи выполняются в одном потоке, чтобы избежать распространенных ошибок приложения, вызванных параллельным выполнением.

Если вы действительно хотите параллельное выполнение, вы можете вызвать executeOnExecutor (java.util.concurrent.Executor, Object []) с THREAD_POOL_EXECUTOR.

...