1
resposta

Qual seria a diferença entre uma variável AtomicBoolean e static

Ola pessoal!

1-Pergunta

Qual seria a principal diferença entre uma variável AtomicBoolean e uma static boolean, por exemplo

privata AtomicBoolean estaRodando
private static boolean estaRodando

Ambas tem o mesmo objetivo de serem compartilhadas por todas as threads,certo? Poderia dizer que o AtomicBoolean faz a abstração da sicronização entre as threads enquanto se eu declarar uma variável static boolean, seria necessário o programador fazer esse controle de sicronização?

2-Pergunta

Outra pergunta,se eu criar 10 threads e em cada uma delas fizer

private AtomicBoolean estaRodando
public ServidorTarefasTeste(){
//Outros atributos
this.estaRodando = new AtomicBoolean(false)
}

Essa variável esta compartilhada entre todas as threads? Ou seja,se uma thread mudar esse valor, as outras vão poder perceber? Ou seria melhor usar uma variável static nesse caso?

Obrigado!

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

2) Se você criar 10 threads compartilhando o mesmo objeto, a resposta é sim.

1) Acho que você tem razão. O melhor lugar para se certificar é na própria documentação => https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/package-summary.html