Встречается на собеседованиях • сегодня
Как работают Atomic переменные
Atomic переменные обеспечивают потокобезопасные операции без блокировок, используя низкоуровневые механизмы процессора (CAS — Compare-And-Swap). Они гарантируют атомарность чтения, записи и обновления, даже если несколько потоков работают с одной переменной.
Пример с AtomicInteger:
java
AtomicInteger counter = new AtomicInteger(0);
// Потокобезопасный инкремент
counter.incrementAndGet(); // 1
// CAS-операция
boolean updated = counter.compareAndSet(1, 2); // true, если текущее значение == 1Основные классы: AtomicInteger, AtomicLong, AtomicBoolean, AtomicReference. Под капотом используют sun.misc.Unsafe или VarHandle (Java 9+). Преимущество — отсутствие блокировок, но при высокой конкуренции возможны повторные попытки CAS.

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