Junior — Middle
92
Java'da AtomicInteger sınıfının çalışma prensibini açıklayın ve bunun nasıl güvenli çoklu iş parçacığı yönetimi sağladığını anlatın.
Sorulan şirketler
eRaga Infosystem
AI'dan gelen yanıt
sobes.tech yapay zeka
Класс AtomicInteger в Java предоставляет целочисленное значение, операции над которым являются атомарными, то есть выполняются полностью или не выполняются вовсе, без прерывания другими потоками. Это обеспечивает безопасное управление состоянием в многопоточной среде без использования явной синхронизации.
Основные методы AtomicInteger, такие как incrementAndGet(), decrementAndGet(), compareAndSet(), используют низкоуровневые атомарные инструкции процессора (например, CAS — compare-and-swap), что позволяет избежать гонок данных.
Пример использования:
import java.util.concurrent.atomic.AtomicInteger;
public class Counter {
private AtomicInteger count = new AtomicInteger(0);
public void increment() {
count.incrementAndGet();
}
public int getCount() {
return count.get();
}
}
В этом примере несколько потоков могут безопасно вызывать increment(), и значение count будет корректно увеличиваться без дополнительных блокировок.