Sobes.tech
Back to questions
Junior — Middle
73

Как реализовать отправку email-уведомления после завершения асинхронной задачи, использующей CompletableFuture?

Answer from AI

sobes.tech AI

Для отправки email-уведомления после завершения асинхронной задачи с использованием CompletableFuture можно использовать метод thenRun или thenAccept, который выполнится после завершения основной задачи.

Пример:

CompletableFuture<Void> future = CompletableFuture.runAsync(() -> {
    // Асинхронная задача
    performLongRunningTask();
});

future.thenRun(() -> {
    // Отправка email после завершения задачи
    sendEmailNotification();
});

// Методы для примера
void performLongRunningTask() {
    // ...
}

void sendEmailNotification() {
    // Логика отправки email
}

Таким образом, thenRun гарантирует, что уведомление отправится только после успешного завершения асинхронной операции.