winperf.h) (PERF_INSTANCE_DEFINITION 结构
描述性能对象的实例。
语法
typedef struct _PERF_INSTANCE_DEFINITION {
DWORD ByteLength;
DWORD ParentObjectTitleIndex;
DWORD ParentObjectInstance;
LONG UniqueID;
DWORD NameOffset;
DWORD NameLength;
} PERF_INSTANCE_DEFINITION, *PPERF_INSTANCE_DEFINITION;
成员
ByteLength
此结构的大小,包括后面的实例名称(以字节为单位)。 此值必须是 8 字节的倍数。
ParentObjectTitleIndex
title 数据库中父对象名称的索引。 例如,如果对象是线程,父对象是进程,或者如果对象是逻辑驱动器,则父级是物理驱动器。
ParentObjectInstance
实例在与此实例关联的父对象中的位置。 位置从零开始。
UniqueID
可用于标识实例的唯一标识符,而不是使用名称来标识实例。 如果不使用唯一标识符来区分计数器实例,请将此成员设置为 PERF_NO_UNIQUE_ID。
NameOffset
从此结构的开头偏移到此实例的 Unicode 名称。
NameLength
实例名称的长度(包括 null 终止符)(以字节为单位)。 如果实例没有名称,则此成员为零。
请勿在长度中包含添加到实例名称的任何填充,以确保 ByteLength 与 8 字节边界对齐。
注解
如果 PERF_OBJECT_TYPE 的 NumInstances 成员大于零,则 对象包含 实例。 使用 PERF_OBJECT_TYPE 的 DefinitionLength 成员查找对象的第一个实例。 有关详细信息,请参阅 性能数据格式。
使用者应使用父实例名称(如果指定)来创建用于显示的完整实例名称。 约定是将名称形成为父/子。
提供程序应使用唯一的实例名称。 如果不这样做,则使用者很难计算和显示性能值,因为他们无法判断当前实例是否引用了以前查询过的同一实例 (实例可以) 。
提供程序必须为实例名称分配足够的空间,以确保 ByteLength 与 8 字节边界对齐。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
标头 | winperf.h (包括 Windows.h) |