Закрываем все темы: от базовых потоков и пулов до lock-free алгоритмов, JMM и Disruptor Framework — с практикой и разбором собеседований.
Два занятия по 4 часа с живыми примерами и кодом
Проверка всех тем + видеоразбор каждой задачи
От базовых до сложных вопросов — разберём всё
JMH, JStress, Disruptor, Chronicle Map и другие
Правильное проектирование, старт, остановка, прерывание потоков, переиспользование — и да, поток можно остановить.
Пишем пулы с нуля, используем готовые. Фиксированный, ForkJoin, кэшированный и другие. Разбираемся с эффективным количеством потоков.
Основы JMM, общая память и проблемы консистентности. Решения через volatile и CAS. Кэш-линии и аннотация @Contended для оптимизаций.
Подробный разбор synchronized, waiting set, monitor — откуда это взялось и как работает. Проблема starvation.
Когда и какой лок выбрать. Возможности локов по сравнению с обычным synchronized.
Реализуем вручную и через готовые примитивы: атомарные примитивы, AtomicReference, атомарные коллекции.
Какие коллекции когда применять и в чём слабости существующих решений.
Выявляем проблемы и находим баги в многопоточной среде с помощью специализированных фреймворков.
Теория: что такое happens-before. Order vs Atomicity vs Visibility — чёткая картина потокобезопасного кода.
CompletableFuture, Semaphore, CyclicBarrier, Phaser, ThreadLocal, а также ScopedValues из новой Java.
Когда parallel streams дают реальный выигрыш, а когда ломают всё. Правильные и неправильные примеры.
Применяем знания в Spring — пишем потокобезопасный код, используем возможности фреймворка.
Affinity Lock, Chronicle Map, Disruptor Framework — высокопроизводительная многопоточность на практике.
Разбираем вопросы от базовых до сложных — чтобы чувствовать себя уверенно на любом интервью.
Многопоточность — одна из самых сложных тем в Java. Она трудна из-за самой парадигмы, недоступности хорошей информации и её «разбросанности» по разным источникам.
В этом интенсивном курсе вы закроете почти все существующие темы, попрактикуетесь на домашних заданиях и будете гораздо увереннее на собеседованиях.
Курс состоит из двух занятий по 4 часа. Стоимость — 9 000 рублей. Тем, кто был на любом из моих курсов, скидка 10%. Цена намеренно низкая — это первый выпуск курса по многопоточке.
Готовы разобраться с многопоточкой раз и навсегда?
Записаться на курс