Встречается на собеседованиях • сегодня
Что такое механизм CAS
CAS (Compare-And-Swap) — это атомарная операция, используемая для реализации безблокирующих алгоритмов. Она сравнивает текущее значение переменной с ожидаемым и, если они совпадают, обновляет значение переменной. В противном случае операция завершается неудачей. В Java реализован через классы Atomic* (например, AtomicInteger).
Пример:
java
AtomicInteger counter = new AtomicInteger(0);
int expectedValue = 0;
int newValue = 1;
boolean success = counter.compareAndSet(expectedValue, newValue); // true, если значение было 0Преимущества:
- Отсутствие блокировок (меньше накладных расходов)
- Подходит для высоконагруженных систем
Недостатки:
- Может привести к "гонке" (потоки повторяют операцию при неудаче)
- Сложность реализации сложных операций
Используется в ConcurrentHashMap, ReentrantLock и других concurrent-структурах.

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