PERF_COUNTERSET_REG_INFO 结构 (perflib.h)

包含有关包含 结构的 PERF_COUNTERSET_REG_INFO 块的信息。 PERF_COUNTERSET_REG_INFO块提供计数器集及其包含的性能计数器的注册信息,由紧跟PERF_COUNTERSET_REG_INFO结构以及对应于计数器集中性能计数器的一组PERF_COUNTER_REG_INFO结构组成。

语法

typedef struct _PERF_COUNTERSET_REG_INFO {
  GUID  CounterSetGuid;
  ULONG CounterSetType;
  ULONG DetailLevel;
  ULONG NumCounters;
  ULONG InstanceType;
} PERF_COUNTERSET_REG_INFO, *PPERF_COUNTERSET_REG_INFO;

成员

CounterSetGuid

计数器集的唯一标识符。

CounterSetType

保留。

DetailLevel

计数器集中计数器的目标受众。

可能的值包括:

含义
PERF_DETAIL_NOVICE
可以将计数器显示给任何级别的用户。
PERF_DETAIL_ADVANCED
计数器很复杂,应仅向高级用户显示。

NumCounters

PERF_COUNTERSET_REG_INFO 块中的 PERF_COUNTER_REG_INFO 结构数。

InstanceType

指定计数器集是允许多实例(如进程和物理磁盘),还是允许单实例(如内存)。

下面是可能的实例类型。

含义
PERF_COUNTERSET_SINGLE_INSTANCE
该计数器集中包含多个单实例计数器,例如,测量物理内存的计数器。
PERF_COUNTERSET_MULTI_INSTANCES
该计数器集中包含多个多实例计数器,例如,测量进程的平均磁盘 I/O 的计数器。
PERF_COUNTERSET_SINGLE_AGGREGATE
该计数器集中包含多个单实例计数器,这些计数器的聚合值是从一个或多个源获取的。 例如,这种类型的计数器集内的计数器可以从计算机上的每个硬盘(共三个)获取读取次数并对它们的值求和。
PERF_COUNTERSET_MULTI_AGGREGATE
该计数器集中包含多个多实例计数器,这些计数器的聚合值是从该计数器的所有实例获取的。 例如,此类型的计数器集中的计数器可能会获取多线程应用程序中所有线程的总线程执行时间,并求和其值。
PERF_COUNTERSET_SINGLE_AGGREGATE_HISTORY
此类型和 PERF_COUNTERSET_SINGLE_AGGREGATE 的区别在于,此计数器集类型存储使用者应用程序生存期内的所有计数器值, (计数器值缓存超过计数器) 的生存期。 例如,如果上述单个聚合示例中的某个硬盘不可用,则该磁盘读取的总字节数仍将可用,并用于计算聚合值。
PERF_COUNTERSET_INSTANCE_AGGREGATE
未实现。

注解

调用的 PerfQueryCounterSetRegistrationInfo 函数,并将 requestCode 参数设置为 PERF_REG_COUNTERSET_STRUCT 获取 PERF_COUNTERSET_REG_INFO 块。

要求

要求
最低受支持的客户端 Windows 10版本 1607 [仅限桌面应用]
最低受支持的服务器 Windows Server 2016 [仅限桌面应用]
标头 perflib.h