Встречается на собеседованиях • сегодня
Что делает Compare And Set
Compare And Set (CAS) — это атомарная операция, которая проверяет, соответствует ли текущее значение переменной ожидаемому, и только в этом случае обновляет его. Если значение изменилось другим потоком, операция завершается неудачей.
Реализована в Java через классы Atomic* (например, AtomicInteger):
java
AtomicInteger atomicInt = new AtomicInteger(5);
boolean updated = atomicInt.compareAndSet(5, 10); // true, если значение было 5Особенности:
- Неблокирующая альтернатива
synchronized. - Может привести к гонке (поток повторяет попытки, если CAS провалился).
- Поддержка на уровне процессора (инструкция
CMPXCHGв x86).
Используется в ConcurrentHashMap, Lock-Free алгоритмах и др.

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