Встречается на собеседованиях • сегодня
На каком принципе основано неблокирующее поведение класса AtomicInteger
AtomicInteger основан на принципе Compare-And-Swap (CAS) — атомарной операции, которая сравнивает текущее значение с ожидаемым и обновляет его, если они совпадают. Это реализовано через нативные методы Unsafe, использующие аппаратную поддержку процессора.
Пример:
java
AtomicInteger counter = new AtomicInteger(0);
counter.incrementAndGet(); // Неблокирующая операцияВнутри incrementAndGet() использует цикл CAS:
- Читает текущее значение
- Пытается установить новое (старое + 1)
- Если другой поток изменил значение — повторяет операцию
Преимущества:
- Нет блокировок (нет context switching)
- Высокая производительность при низкой конкуренции
Недостатки:
- При высокой конкуренции — много повторных попыток (busy waiting)

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы