Вы здесь

CompletableFuture. Хочется взять и применить

Лекция
Предмет:
Конференция:
Дата записи:
18.10.15
Дата публикации:
19.02.16
Код для блога:

Стандартная библиотека должна помогать выстраивать любые параллельные вычисления, да ещё бы так, чтобы хорошо использовать все ядра. В Java уже довольно давно существуют Thread, Future и ExecutorSevice. Однако часто использование потоков «вручную» порождает типичные ошибки и сложности. Бывает трудно добиться максимальной производительности, и не всегда получается вписаться в общий стиль обработки данных. Java 8 предлагает решения. Например, для модели pull удобнее использовать стримы (java.util.Streams), а для continuation — CompletableFuture.

В докладе мы посмотрим, как просто избавиться от блокирующих вызовов и ада коллбэков и коснемся следующих тем:

  • Переход от блокирующегося исполнения на основе Future к подходу без блокировок на основе CompletableFuture;
  • Разбор API;
  • Накладные расходы;
  • Простое руководство для многоуровневых систем (на примере веб-сервера);
  • Что внутри и что дальше.