Как выполнить выполнение задач по умолчанию (последовательно или параллельно).
До уровня API 11: параллельный.
Уровень API 11 и выше: серийный.
, которые должны быть использованы для новых SDKs> 16 (executeOnExecuter?)
В зависимости от ваших требований. Используйте execute()
, если вы довольны исполнителем по умолчанию. Используйте явный исполнитель, если вы этого не сделали.
Это хорошая практика, чтобы использовать параллельное выполнение (THREAD_POOL_EXECUTOR) для выполнения задач, а не серийные, даже если это не имеет значения для применения или делает это зависит от количества асинхронных задач, которые будут выполняться?
Асинхронные задачи должны использоваться только для относительно коротких операций заднего плана.Цитирование AsyncTask
документации:
AsyncTasks в идеале должны быть использованы для коротких операций (несколько секунд, в лучшем случае.) Если вам нужно сохранить темы, работающие в течение длительных периодов времени, настоятельно рекомендуется использовать различные API, предоставляемые пакетом java.util.concurrent, таким как Executor, ThreadPoolExecutor и FutureTask.
Пока задача async запущена, поток исполнителя не может выполнять другие задачи. На последовательном исполнителе с одним потоком исполнителей легче обнаруживать проблемы, когда ваши задачи выполняются слишком долго. На параллельном исполнителе обнаружение таких проблем требует более одновременных длительных задач.
Поэтому, если вам действительно нужно переключиться на параллельный исполнитель, вам, вероятно, лучше пересмотреть свой дизайн.
Параллельное выполнение было отключено по умолчанию в API AsyncTask после цели сэндвич мороженого. Поэтому, если вам все еще требуется параллельное выполнение в ваших AsyncTasks, вам нужно использовать 'executeOnExecutor'. –