winnt.h) (PERFORMANCE_DATA结构
包含请求的线程分析和硬件计数器数据。
语法
typedef struct _PERFORMANCE_DATA {
WORD Size;
BYTE Version;
BYTE HwCountersCount;
DWORD ContextSwitchCount;
DWORD64 WaitReasonBitMap;
DWORD64 CycleTime;
DWORD RetryCount;
DWORD Reserved;
HARDWARE_COUNTER_DATA HwCounters[MAX_HW_COUNTERS];
} PERFORMANCE_DATA, *PPERFORMANCE_DATA;
成员
Size
此结构的大小。
Version
此结构的版本。 必须设置为 PERFORMANCE_DATA_VERSION。
HwCountersCount
HwCounters 数组中包含硬件计数器数据的数组元素数。 值为 3 表示数组包含三个硬件计数器的数据,而不是元素 0 到 2 包含计数器数据。
ContextSwitchCount
启用分析后发生的上下文切换数。
WaitReasonBitMap
一个位掩码,用于标识自上次读取数据以来发生的上下文切换的原因。 有关可能的值,请参阅 KWAIT_REASON 枚举 (枚举包含在 WDK) 的 Wdm.h 文件中。
CycleTime
线程 (的周期时间不包括启用分析) 中断所用的时间。
RetryCount
读取操作读取数据的次数,以确保数据快照一致。
Reserved
保留。 设置为零。
HwCounters[MAX_HW_COUNTERS]
包含计数器值的 HARDWARE_COUNTER_DATA 结构的数组。 包含计数器数据的数组的元素与调用 EnableThreadProfiling 函数时指定的 HardwareCounters 位掩码中设置的位直接相关。 例如,如果在 HardwareCounters 位掩码中设置位 3,HwCounters[3] 将包含该计数器的计数器数据。
注解
在调用 ReadThreadProfilingData 函数以读取分析数据之前,必须初始化 Size 和 Version 成员。
此结构中包含的配置文件数据取决于调用 ReadThreadProfilingData 函数时请求的数据。 指定READ_THREAD_PROFILING_FLAG_DISPATCHING标志时,将设置以下成员:
- ContextSwitchCount
- CycleTime
- RetryCount
- WaitReasonBitMap
- HwCounters
- HwCountersCount
要求
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
标头 | winnt.h (包括 Windows.h) |