Sobes.tech
Назад к вопросам
Senior
8

Для чего нужен CompletableFuture?

Компании, где спрашивали
Octo

Ответ от нейросети

sobes.tech AI

CompletableFuture в Java — это класс из пакета java.util.concurrent, который представляет собой будущий результат асинхронной операции.

Основные возможности:

  • Позволяет выполнять задачи асинхронно без блокировки основного потока.
  • Поддерживает цепочки и комбинации асинхронных операций с помощью методов вроде thenApply, thenCompose, thenAccept.
  • Позволяет обрабатывать ошибки и отменять задачи.

Пример использования:

CompletableFuture.supplyAsync(() -> {
    // Долгая операция
    return "Результат";
}).thenApply(result -> {
    // Обработка результата
    return result.length();
}).thenAccept(length -> {
    System.out.println("Длина результата: " + length);
});

CompletableFuture удобен для построения сложных асинхронных цепочек и управления ими, что улучшает читаемость и производительность кода.