Modificador volatile

2 respostas
J

Estava lendo sobre palavras reservadas menos comuns e me deparei com essa: volatile. Na documentação do JBuilder, em Java Quick Reference, diz: This variable´s value can change unexpectedly. Ou seja, variaveis com esse modificador podem ter seu valor alterado inesperadamente. O que isso significa? Em que casos alguem precisaria usar isso?



valeuz…

2 Respostas

B

Que explicação mais horrível que foram arrumar!

Na verdade, tem a ver com threads.

Uma thread normalmente tem uma "cópia" do valor da variável que ela utiliza na sua execução. Dessa forma, ela pode estar trabalhando com uma versão desatualizada do valor da variável caso uma outra thread tenha modificado este valor.

Através da palavra volatile você garante que o valor da variável será sincronizado com a "cópia principal" antes de utilizá-lo.

J

Realmente a explicação estava podre… :-W



valeuz… :-]

Criado 14 de fevereiro de 2003
Ultima resposta 14 de fev. de 2003
Respostas 2
Participantes 2