Что такое Atomic классы

«Что такое Atomic классы» — вопрос из категории Многопоточность, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Atomic классы в Java (и Kotlin) обеспечивают атомарные операции над примитивами и ссылками без использования synchronized. Они работают через CAS (Compare-And-Swap) на уровне процессора, что делает их более эффективными, чем блокировки.

Пример:

val atomicInt = AtomicInteger(0)
atomicInt.incrementAndGet() // атомарное увеличение

Основные Atomic классы:

  • AtomicInteger, AtomicLong
  • AtomicBoolean
  • AtomicReference (для объектов)

Используются в многопоточной среде, когда нужно обеспечить потокобезопасность без блокировок.