volátil (translation from VPE for Csharp Reference)
The volatile palavra-chave indica que um campo pode ser modificado por vários segmentos que estão em execução ao mesmo time. Campos que são declarados volatile não estão sujeitas a otimizações de compilador suponha acesso por um único thread. Isso assegura que o valor mais atualizado está presente no campo sempre.
The volatile modificador geralmente é usado para um campo que é acessado por vários threads sem usar o bloquear demonstrativo para serializar o acesso.See Como: Criar e terminar threads (guia de programação translation from VPE for Csharp) Para obter um exemplo de volatile em um cenário de vários segmentos.
The volatile palavra-chave pode ser aplicado a campos desses tipos:
Tipos de referência.
Tipos de ponteiro (em um contexto sem segurança).Observe que embora o ponteiro se pode ser volátil, o objeto que ela aponta para não.Em outras palavras, você não pode declarar um "ponteiro para volátil".
Integrais tipos sistema autônomo sbyte, byte, short, ushort, int, uint, char, float e bool.
Um tipo enum com o tipo de base integral.
Parâmetros de tipo genérico conhecidos como tipos de referência.
A palavra-chave volátil só pode ser aplicada aos campos de uma classe ou estrutura.As variáveis locais não podem ser declaradas volatile.
Exemplo
O exemplo a seguir mostra sistema autônomo declarar uma variável no campo público sistema autônomo volatile.
class VolatileTest
{
public volatile int i;
public void Test(int _i)
{
i = _i;
}
}
Especificação da linguagem C#
Para obter mais informações, consulte as seções a seguir no Especificação da linguagem C#:
3.10 Ordem de execução
10.5.3 Campos volátil