Senior
O que é AtomicInteger, para que é utilizado e quais são as suas vantagens?
sobes.tech IA
Resposta da IA
AtomicInteger é uma classe do pacote java.util.concurrent.atomic que fornece operações atômicas sobre um valor inteiro. É usada para modificar de forma segura valores numéricos em um ambiente multithread sem a necessidade de usar sincronização através de synchronized ou bloqueios.
A vantagem do AtomicInteger é que ele oferece alto desempenho e segurança no acesso concorrente, usando instruções atômicas de baixo nível do processador.
Exemplo de uso:
import java.util.concurrent.atomic.AtomicInteger;
public class Counter {
private AtomicInteger count = new AtomicInteger(0);
public void increment() {
count.incrementAndGet(); // incremento atômico em 1
}
public int getCount() {
return count.get();
}
}
Neste exemplo, o método increment() é seguro para ser chamado de múltiplos threads ao mesmo tempo sem risco de condições de corrida.