Поделиться через


PerformanceCounter.Increment Метод

Определение

Увеличивает значение связанного счетчика производительности на единицу через эффективные атомарные операции.

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

Возвращаемое значение

Увеличенное значение счетчика.

Исключения

Счетчик доступен только для чтения, поэтому приложение не может увеличить его значение.

-или-

Экземпляр класса, неправильно связанный со счетчиком производительности.

-или-

При использовании глобальной общей памяти свойству InstanceLifetime присваивается значение Process.

Произошла ошибка при обращении к API-интерфейсу системы.

Комментарии

Запись можно выполнять только в пользовательские счетчики. Все системные счетчики доступны только для чтения.

Примечание

Методы Increment, IncrementByи Decrement используют блокировки для обновления значения счетчика. Это помогает сохранить точное значение счетчика в многопоточных или многопроцессных сценариях, но также приводит к снижения производительности. Если точность, обеспечиваемая операциями с блокировкой, не требуется, можно обновить RawValue свойство напрямую, чтобы повысить производительность в 5 раз. Однако в многопоточных сценариях некоторые обновления значения счетчика могут игнорироваться, что приводит к неточным данным.

Примечание

Если свойство имеет Process значение InstanceLifetime , а категория счетчика производительности была создана с платформа .NET Framework версии 1.0 или 1.1, возникает исключение InvalidOperationException . Категории счетчиков производительности, созданные в более ранних версиях, используют глобальную общую память, и значение для InstanceLifetime должно иметь значение Global. Если категория не используется приложениями, работающими в версии 1.0 или 1.1 платформа .NET Framework, удалите и повторно создайте категорию.

Применяется к

Потокобезопасность

Этот метод является потокобезопасным.