Привет, Хаброжители!

Добро пожаловать в будущее Java! Изучите главное новшество Java 21 — виртуальные потоки. Помните, как приходилось бороться с высокой стоимостью создания потоков, сталкиваться с ограничениями масштабируемости и трудностями при попытке достичь высокой пропускной способности? Те дни прошли! Это практическое руководство проведет вас от Java 1.0 до прорывных достижений Project Loom.

Автор не ограничивается теорией, а предлагает набор инструментов, которые применимы для реальных проектов. Погрузитесь в тонкости виртуальных потоков и такие сложные темы, как ForkJoinPool, продолжение, ограничение скорости, отладка и мониторинг. Вы не только узнаете принципы их работы, но и получите экспертные советы и приемы для освоения этих концепций. Особое внимание уделено структурированной многопоточности и scoped values — ключевым навыкам для создания масштабируемых и эффективных Java-приложений.

В книге:

  • Освоите принципы работы виртуальных потоков.

  • Разберетесь во внутреннем устройстве и реализации виртуальных потоков.

  • Научитесь повышать производительность при выполнении блокирующих операций.

  • Узнаете о преимуществах структурированной многопоточности.

  • Поймете, где именно стоит использовать scoped values.

  • Оцените актуальность реактивного программирования на Java с появлением виртуальных потоков.

Для кого эта книга

Книга предназначена для Java-разработчиков, уже имеющих базовое представление о конкурентности и многопоточности. Она не является руководством для начинающих, а ориентирована на тех, кто уже писал конкурентные программы с помощью традиционных инструментов: Thread, ExecutorService, синхронизации и утилит коллекций вроде ReentrantLock и Semaphore, и хочет глубже разобраться в современных фичах конкурентности, добавленных в последние версии Java. Например, в виртуальных потоках, структурированной конкурентности и scoped values. Тем, кто хочет изучить основы конкурентности, рекомендую книгу Брайана Гетца (Brian Goetz) Java Concurrency in Practice.

Если вы сталкивались с проблемами ограничения числа потоков, блокирующего ввода/вывода, настройки пула потоков или управления сложной логикой жизненного цикла и отмены задач, данная книга поможет вам переосмыслить эти вопросы в контексте развивающейся модели конкурентности Java. Книга будет особенно полезна:

  • разработчикам среднего и высокого уровня, которые стремятся модернизировать конкурентный код;

  • архитекторам, проектирующим масштабируемые системы;

  • инженерам, которые заинтересованы в создании надежных и высокопроизводительных приложений с использованием конкурентности;

  • тимлидам, оценивающим новые технологии;

  • всем, кто интересуется будущим конкурентности в Java.

Начинающим Java-разработчикам эта книга все же пригодится для общего ознакомления с современной конкурентностью. Однако им для полного понимания рекомендую предварительно или параллельно познакомиться с основополагающими темами: синхронизацией, состоянием гонки (race condition) и публикацией данных (data publishing). Чтобы успешно писать конкурентный код, знать эти основы необходимо. Хотя при работе с современными фреймворками разработчик, как правило, не сталкивается с этими понятиями напрямую, они становятся ключевыми, когда приходится разбираться с серьезными ошибками. Базовые знания необходимы для глубокого понимания любой темы — и конкурентность не исключение.

«Базлур Рахман предлагает вели- колепный обзор актуальных подходов к многопоточности в Java — и это действительно современный взгляд. В книге рассматриваются долгожданные новшества последних выпусков JDK. Читатель получает отличную возможность ознакомиться с виртуальными потоками Java и изучить лучшие практики многопоточного программирования. Настоятельно рекомендую».

Марк Лой, автор книг о Java

«Книга “Современный Java Concurrency” — отличный путеводитель по виртуальным потокам, многопоточности и scoped values, который кардинально меняет взгляд Java-разработчика на масштабируемость. Эта книга — долгожданный преемник классической “Java Concurrency на практике” Брайана Гетца. Обязательна к прочтению каждому, кто создает масштабируемые системы на Java».

Кен Коузен, президент компании Kousen IT, профессор Тринити-колледжа

Об авторе
А Н М Базлур Рахман (A N M Bazlur Rahman)

инженер-программист с более чем десятилетним опытом работы с Java и смежными технологиями. Он постоянный спикер на международных конференциях и встречах Java-сообществ, его доклады часто посвящены конкурентности и виртуальным потокам. Является Java Champion, редактором Java Queue в InfoQ и Foojay.io, а также основателем и действующим модератором Java User Group в Бангладеш, где с 2013 года организует образовательные митапы и конференции.

Ознакомиться с оглавлением
Полистать отрывок

Приобрести книгу «Современный Java Concurrency. Глубокое погружение в Virtual Threads, Structured Concurrency и Scoped Values» можно на нашем сайте.

По факту оплаты бумажной версии книги на e‑mail высылается электронная книга.

Для Хаброжителей действует скидка 35% по промокоду — Java35