Articles of volátil

Volátil booleano vs AtomicBoolean

O que o AtomicBoolean faz que um booleano volátil não pode alcançar?

Quando exatamente você usa a palavra-chave volátil em Java?

Eu li ” Quando usar ‘volátil‘ em Java? “, Mas ainda estou confuso. Como sei quando devo marcar uma variável volátil? E se eu errar, omitindo algo volátil em algo que precise ou colocando algo volátil em algo que não precisa? Quais são as regras práticas ao descobrir quais variables ​​devem ser voláteis no código […]

Volátil Vs Static em java

É correto dizer que estática significa uma cópia do valor para todos os objects e volátil significa uma cópia do valor para todos os segmentos? De qualquer forma, um valor de variável estática também vai ser um valor para todos os segmentos, então por que devemos ir para o volátil ?

Qual é a diferença entre atômica / volátil / sincronizada?

Como o trabalho atômico / volátil / sincronizado funciona internamente? Qual é a diferença entre os seguintes blocos de código? Código 1 private int counter; public int getNextUniqueIndex() { return counter++; } Código 2 private AtomicInteger counter; public int getNextUniqueIndex() { return counter.getAndIncrement(); } Código 3 private volatile int counter; public int getNextUniqueIndex() { return […]

Quando usar volátil com multi-threading?

Se houver dois encadeamentos acessando uma variável global, então muitos tutoriais dizem que a variável torna-se volátil para evitar que o compilador armazene em cache a variável em um registrador e, portanto, não seja atualizado corretamente. No entanto, dois segmentos que acessam uma variável compartilhada são algo que exige proteção por meio de um mutex, […]

Volátil vs. intertravado vs. bloqueio

Digamos que uma class tenha um campo public int counter acessado por vários threads. Este int só é incrementado ou decrementado. Para incrementar este campo, qual abordagem deve ser usada e por quê? lock(this.locker) this.counter++; , Interlocked.Increment(ref this.counter); , Altere o modificador de access do counter para public volatile . Agora que descobri que é […]

Diferença entre volátil e sincronizado em Java

Eu estou querendo saber a diferença entre declarar uma variável como volatile e sempre acessando a variável em um bloco synchronized(this) em Java? De acordo com este artigo http://www.javamex.com/tutorials/synchronization_volatile.shtml, há muito a ser dito e existem muitas diferenças, mas também algumas semelhanças. Estou particularmente interessado nesta informação: … o access a uma variável volátil nunca […]

Por que a volatilidade é necessária em C?

Por que a volatile é necessária em C? Para que isso é usado? O que vai fazer?

Por que o volátil não é considerado útil em programação C ou C ++ multithread?

Como demonstrado nesta resposta que publiquei recentemente, pareço estar confuso sobre a utilidade (ou falta dela) de volatile em contextos de programação multi-thread. Meu entendimento é o seguinte: sempre que uma variável pode ser alterada fora do stream de controle de uma parte do código que a acessa, essa variável deve ser declarada volatile . […]

Você já usou a palavra-chave volátil em Java?

No trabalho hoje, me deparei com a palavra–chave volatile em Java. Não estando muito familiarizado com isso, encontrei esta explicação: Teoria e prática de Java: gerenciando a volatilidade Dado o detalhe em que esse artigo explica a palavra-chave em questão, você já a usou ou já viu um caso em que você poderia usar essa […]