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


структура PERF_DATA_BLOCK (winperf.h)

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

Синтаксис

typedef struct _PERF_DATA_BLOCK {
  WCHAR         Signature[4];
  DWORD         LittleEndian;
  DWORD         Version;
  DWORD         Revision;
  DWORD         TotalByteLength;
  DWORD         HeaderLength;
  DWORD         NumObjectTypes;
  LONG          DefaultObject;
  SYSTEMTIME    SystemTime;
  LARGE_INTEGER PerfTime;
  LARGE_INTEGER PerfFreq;
  LARGE_INTEGER PerfTime100nSec;
  DWORD         SystemNameLength;
  DWORD         SystemNameOffset;
} PERF_DATA_BLOCK, *PPERF_DATA_BLOCK;

Члены

Signature[4]

Массив из четырех расширенных символов, содержащих "PERF".

LittleEndian

Указывает, находятся ли значения счетчиков в формате большого эндиана или в малом формате эндиана. Если таковой, значения счетчиков имеют мало эндианского формата. Если значение равно нулю, значения счетчиков имеют большой формат endian. Это значение может быть равно нулю (формат большого байта), если вы извлекаете данные о производительности с иностранного компьютера, например компьютера UNIX.

Version

Версия структур производительности.

Revision

Пересмотр структур производительности.

TotalByteLength

Общий размер блока данных о производительности в байтах.

HeaderLength

Размер этой структуры в байтах. Длина заголовка используется для поиска первой структуры PERF_OBJECT_TYPE в блоке данных о производительности.

NumObjectTypes

Количество объектов производительности в блоке данных о производительности.

DefaultObject

Зарезервировано.

SystemTime

Время мониторинга системы. Этот элемент имеет формат UTC.

PerfTime

Значение счетчика производительности (в счетчиках) для отслеживаемой системы. Дополнительные сведения см. в разделе QueryPerformanceCounter.

PerfFreq

Частота счетчика производительности в количестве в секунду для отслеживаемой системы. Дополнительные сведения см. в разделе QueryPerformanceFrequency.

PerfTime100nSec

Значение счетчика производительности в 100 наносекундных единиц для отслеживаемой системы. Дополнительные сведения см. в разделе GetSystemTimeAsFileTime.

SystemNameLength

Размер имени компьютера, расположенного в systemNameOffset, в байтах.

SystemNameOffset

Смещение от начала этой структуры до имени отслеживаемого компьютера в Юникоде.

Комментарии

Блок данных производительности возвращается, когда потребитель вызывает RegQueryValueEx для получения одного или нескольких объектов производительности. Эта структура является первой в возвращаемом блоке. Следующей структурой в блоке является структура PERF_OBJECT_TYPE , которая определяет объект производительности. Дополнительные сведения о макете блока данных о производительности см. в разделе Формат данных производительности.

Потребители используют PerfTime, PerfFreq и PerfTime100nSec при вычислении значений счетчиков, если только тип счетчика не содержит флаг PERF_OBJECT_TIMER , в этом случае потребитель использует элементы PerfTime и PerfFreqPERF_OBJECT_TYPE.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть winperf.h (включая Windows.h)

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

PERF_OBJECT_TYPE

Формат данных производительности