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


Функция PerfDecrementULongCounterValue (perflib.h)

Уменьшает значение счетчика, значение которого является 4-байтовое целое число без знака. Поставщики используют эту функцию.

Синтаксис

ULONG PerfDecrementULongCounterValue(
  [in] HANDLE                    Provider,
  [in] PPERF_COUNTERSET_INSTANCE Instance,
  [in] ULONG                     CounterId,
  [in] ULONG                     Value
);

Параметры

[in] Provider

Дескриптор поставщика. Используйте переменную дескриптора, созданную инструментом CTRPP . Имя переменной см. в атрибуте символа элемента provider .

Windows Vista: Функция PerfStartProvider возвращает дескриптор.

[in] Instance

Структура PERF_COUNTERSET_INSTANCE , содержащая экземпляр набора счетчиков. Функция PerfCreateInstance возвращает этот указатель.

[in] CounterId

Идентификатор, однозначно определяющий счетчик для обновления в блоке экземпляра. Идентификатор определяется в атрибуте id элемента counter и должен соответствовать элементу CounterId одной из PERF_COUNTER_INFO структур в блоке экземпляра. Используйте константу идентификатора счетчика, созданную средством CTRPP . Имя константы см. в атрибуте символа элемента счетчика .

Windows Vista: Константы идентификатора счетчика недоступны.

[in] Value

Значение, на которое уменьшается счетчик.

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

Если функция выполняется успешно, она возвращает ERROR_SUCCESS.

Если функция завершается сбоем, возвращаемое значение представляет собой системный код ошибки.

Комментарии

Это удобная функция для уменьшения необработанных данных счетчика. Чтобы самостоятельно уменьшать необработанные данные счетчика, используйте элемент Offset структуры PERF_COUNTER_INFO для доступа к необработанным данным счетчика для определенного счетчика. Блок структуры PERF_COUNTERSET_INSTANCE содержит одну или несколько информационных структур счетчиков.

Используйте функцию PerfSetULongCounterValue для первоначального задания значения счетчика.

Обратите внимание, что значение счетчика будет недостаточно, когда значение счетчика уменьшается до нуля.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header perflib.h
Библиотека Advapi32.lib
DLL Advapi32.dll

См. также раздел

PerfDecrementULongLongCounterValue

PerfIncrementULongCounterValue

PerfSetULongCounterValue