Sobes.tech
Junior — Middle

Pode explicar o que significa o termo 'variável atômica' em programação?

sobes.tech IA

Resposta da IA

Uma variável atómica em programação é uma variável cujas operações são realizadas como ações indivisíveis (atómicas). Isto significa que ao trabalhar com tal variável, não pode ocorrer uma condição de corrida ou uma atualização parcial — a operação é concluída completamente ou não começa.

Em Java, por exemplo, a classe AtomicInteger do pacote java.util.concurrent.atomic fornece operações atómicas sobre valores inteiros, como incremento, decremento, comparação e substituição. Isto permite trabalhar de forma segura com variáveis em ambientes multithread sem usar bloqueios.

Exemplo de uso de AtomicInteger:

import java.util.concurrent.atomic.AtomicInteger;

public class Counter {
    private AtomicInteger count = new AtomicInteger(0);

    public void increment() {
        count.incrementAndGet(); // incremento atómico
    }

    public int getCount() {
        return count.get();
    }
}

Aqui, incrementAndGet() garante que mesmo com chamadas simultâneas de vários threads, o valor será incrementado corretamente sem perder atualizações.