Чему вы научитесь
Разберите, где в конкурентном Java-коде теряется атомарность, обоснуйте публикацию снимка цепочкой happens-before и реализуйте мониторный протокол ожидания результата. В курсе 18 вопросов с пояснением к каждому варианту и три задачи на Java 17 с автопроверкой:
- версия снимка: публикация через
compareAndSetс повтором после конфликта; - идемпотентная бронь: повторы запросов и отмен под одним монитором;
- одноразовый результат:
wait/notifyAllдля нескольких читателей и закрытие.
Тесты воспроизводят конфликт CAS и лишнее уведомление детерминированно, без расчёта на случайную гонку. К каждой задаче есть полное решение с разбором инварианта, а чек-лист в конце помогает собрать объяснение для технической секции.
О курсе
Многопоточность Java 17: гонки составных действий, happens-before, неизменяемые снимки, CAS и мониторные протоколы. 18 вопросов и 3 задачи с воспроизводимой проверкой.
Для кого этот курс
Java-разработчики уровня Middle, готовящиеся объяснять конкурентный код на технической секции.
Начальные требования
Уверенное чтение Java, коллекции, исключения и базовое знакомство с потоками; JDK 17 или новее для локального запуска.
Преподаватели курса
Формат курса
Текст, 18 вопросов с объяснениями, 3 задачи Java 17 с автопроверкой, полный разбор. Без видео.
Нагрузка
75–110 минут