AsyncTask позволяет правильно и легко использовать поток пользовательского интерфейса. Этот класс позволяет выполнять фоновые операции и публиковать результаты в потоке пользовательского интерфейса без необходимости манипулировать потоками и / или обработчиками. AsyncTask разработан как вспомогательный класс вокруг Thread and Handler и не представляет собой общую структуру потоков. AsyncTasks идеально подходит для коротких операций (максимум на несколько секунд).

AsyncTask позволяет правильно и легко использовать поток пользовательского интерфейса. Этот класс позволяет выполнять фоновые операции и публиковать результаты в потоке пользовательского интерфейса без необходимости манипулировать потоками и / или обработчиками.

AsyncTask предназначен для вспомогательного класса вокруг Thread и Handler и не является общей структурой потоков. AsyncTask s в идеале следует использовать для коротких операций (не более нескольких секунд).

ВНИМАНИЕ: AsyncTask имеет неявную ссылку на прилагаемое действие. Если произойдет изменение конфигурации, экземпляр Activity, который запустил AsyncTask, будет уничтожен, но не GCd, пока не закончится AsyncTask. Поскольку операции тяжелы, это может привести к проблемам с памятью, если запущено несколько AsyncTasks. Другая проблема заключается в том, что результат AsyncTask может быть потерян, если он предназначен для работы с состоянием Activity. Замените AsyncTask новым AsyncTaskLoader

Дополнительная информация:

Документация для класса AsyncTask Эта запись в блоге на сайте разработчиков Android.