PerformanceCounter.Decrement Método

Definição

Decrementa em um o contador de desempenho associado por meio de uma operação atômica eficiente.

public:
 long Decrement();
public long Decrement ();
member this.Decrement : unit -> int64
Public Function Decrement () As Long

Retornos

Int64

O valor do contador diminuído.

Exceções

O contador é somente leitura para que o aplicativo não possa reduzi-lo.

- ou - A instância não está associada corretamente a um contador de desempenho.

- ou - A propriedade InstanceLifetime está definida como Process ao usar a memória global compartilhada.

Ocorreu um erro ao acessar uma API do sistema.

Comentários

Você só pode escrever em contadores personalizados. Todos os contadores do sistema são somente leitura.

Observação

Os Incrementmétodos e Decrement os IncrementBymétodos usam bloqueios para atualizar o valor do contador. Isso ajuda a manter o valor do contador preciso em cenários multithreaded ou multiprocessos, mas também resulta em uma penalidade de desempenho. Se você não precisar da precisão que as operações interligadas fornecem, poderá atualizar a RawValue propriedade diretamente para uma melhoria de desempenho de até 5 vezes. No entanto, em cenários multithreaded, algumas atualizações para o valor do contador podem ser ignoradas, resultando em dados imprecisos.

Observação

Se o valor da InstanceLifetime propriedade for Process e a categoria do contador de desempenho tiver sido criada com .NET Framework versão 1.0 ou 1.1, será gerada umaInvalidOperationException. As categorias de contador de desempenho criadas com versões anteriores usam memória compartilhada global e o valor deve InstanceLifetime ser Global. Se a categoria não for usada por aplicativos em execução nas versões 1.0 ou 1.1 do .NET Framework, exclua e recrie a categoria.

Aplica-se a

Acesso thread-safe

Este método é thread-safe.