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


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

Возвращает значения счетчиков производительности, которые соответствуют спецификациям счетчиков в указанном запросе.

Синтаксис

ULONG PerfQueryCounterData(
  [in]            HANDLE            hQuery,
  [out, optional] PPERF_DATA_HEADER pCounterBlock,
                  DWORD             cbCounterBlock,
  [out]           LPDWORD           pcbCounterBlockActual
);

Параметры

[in] hQuery

Дескриптор запроса для спецификаций счетчиков производительности, для которых требуется получить значения.

[out, optional] pCounterBlock

Указатель на буфер, в котором достаточно места для получения объема данных, заданного параметром cbCounterBlock , в байтах. Может иметь значение NULL, если

cbCounterBlock имеет значение 0.

cbCounterBlock

Размер буфера, указанного параметром pCounterBlock , в байтах.

[out] pcbCounterBlockActual

Размер буфера, фактически необходимый для получения значений счетчика производительности. Значение зависит от значения функции.

Возвращает.

Возвращаемое значение функции Значение pcbCounterBlockActual
ERROR_SUCCESS Число

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

ERROR_NOT_ENOUGH_MEMORY The

размер буфера, необходимого для хранения значений счетчиков производительности, в байтах. Увеличение буфера до требуемого

size и снова вызовите функцию.

Другое Значение не определено и не должно использоваться.

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

Код возврата Описание
ERROR_SUCCESS
Функция успешно сохранила все запрошенные значения счетчиков производительности в буфере, указанном pCounterBlock . Значение, на которое указывает pcbCounterBlockActual , указывает объем информации, фактически хранящейся в буфере, в байтах.
ERROR_NOT_ENOUGH_MEMORY
Буфер, указанный pCounterBlock , не был достаточно велик для хранения всех запрошенных значений счетчиков производительности. Значение, на которое указывает pcbCounterBlockActual , указывает размер буфера, необходимый для хранения всей информации. Увеличение буфера до требуемого

size и снова вызовите функцию.

 

Для других типов сбоев возвращаемым значением является системный код ошибки.

Комментарии

Сведения о значениях счетчиков производительности записываются в буфер, указанный pCounterBlock в виде блока PERF_DATA_HEADER , который состоит PERF_DATA_HEADER структуре, за которой следует последовательность блоков PERF_COUNTER_HEADER .

Требования

   
Минимальная версия клиента Windows 10 версии 1607 [только классические приложения]
Минимальная версия сервера Windows Server 2016 [только классические приложения]
Целевая платформа Windows
Header perflib.h
Библиотека AdvAPI32.lib
DLL AdvAPI32.dll

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

PERF_COUNTER_HEADER

PERF_DATA_HEADER