Ответ
Для выполнения асинхронных операций без возврата результата в Android/Kotlin лучше использовать CoroutineScope.launch или CompletableFuture.runAsync (если Java).
Пример с Kotlin Coroutines:
viewModelScope.launch {
// Асинхронная операция без результата
someLongRunningTask()
}
Если без корутин (Java/Android):
Executors.newSingleThreadExecutor().execute(() -> {
// Фоновая задача
});
Почему не AsyncTask? Устарел (deprecated в API 30) и имеет проблемы с утечками памяти.
Для одноразовых задач без результата этого достаточно. Если нужен контроль (отмена, повтор), можно использовать Job в корутинах или Future в Executor.