PerformanceCounter.Decrement Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Уменьшает значение связанного счетчика производительности на единицу через эффективные атомарные операции.
public:
long Decrement();
public long Decrement ();
member this.Decrement : unit -> int64
Public Function Decrement () As Long
Возвращаемое значение
Уменьшенное значение счетчика.
Исключения
Счетчик доступен только для чтения, поэтому приложение не может уменьшить его значение.
-или-
Экземпляр класса, неправильно связанный со счетчиком производительности.
-или-
При использовании глобальной общей памяти свойству InstanceLifetime присваивается значение Process.
Произошла ошибка при обращении к API-интерфейсу системы.
Комментарии
Запись можно выполнять только в пользовательские счетчики. Все системные счетчики доступны только для чтения.
Примечание
Методы Increment, IncrementByи Decrement используют блокировки для обновления значения счетчика. Это помогает сохранить точное значение счетчика в многопоточных или многопроцессных сценариях, но также приводит к повышению производительности. Если вам не нужна точность, обеспечиваемая взаимоблокируемыми операциями, можно обновить RawValue свойство напрямую, чтобы повысить производительность в 5 раз. Однако в многопоточных сценариях некоторые обновления значения счетчика могут игнорироваться, что приводит к неточным данным.
Примечание
Если свойство имеет значение InstanceLifetime , Process а категория счетчика производительности была создана с платформа .NET Framework версии 1.0 или 1.1, создается исключение InvalidOperationException . Категории счетчиков производительности, созданные в более ранних версиях, используют глобальную общую память, а значение для InstanceLifetime должно иметь значение Global. Если категория не используется приложениями, работающими в версии 1.0 или 1.1 платформа .NET Framework, удалите и повторно создайте категорию.
Применяется к
Потокобезопасность
Этот метод является потокобезопасным.