PoFxQueryCurrentComponentPerfState 函数 (wdm.h)

PoFxQueryCurrentComponentPerfState 例程检索组件性能状态集中的活动性能状态。

Syntax

NTSTATUS PoFxQueryCurrentComponentPerfState(
  [in] POHANDLE   Handle,
  [in] ULONG      Flags,
  [in] ULONG      Component,
  [in] ULONG      SetIndex,
  [in] PULONGLONG CurrentPerf
);

参数

[in] Handle

一个表示设备注册电源管理框架(PoFx)的句柄。 设备驱动程序以前从 PoFxRegisterDevice 例程收到此句柄。

[in] Flags

设置为 0。 目前,此例程未定义任何标志。

[in] Component

标识正在检索其性能状态的组件的索引。 此参数是PO_FX_DEVICE结构中组件数组的索引,设备驱动程序用于向 PoFx 注册设备。 如果 Components 数组包含 N 个元素,则组件索引范围为 0 到 N–1。

[in] SetIndex

标识正在查询其性能的性能状态集的索引。 此参数是 PO_FX_COMPONENT_PERF_INFO 结构中 PerfStateSets 数组的索引,设备驱动程序用于向 PoFx 注册组件性能状态。 如果 PerfStateSets 数组包含 N 个元素,则性能状态集索引范围为 0 到 N–1。

[in] CurrentPerf

指向返回指定性能状态集的当前性能状态的变量的指针。 有关返回的值的详细信息,请参阅“备注”。

返回值

如果请求的作成功,PoFxQueryCurrentComponentPerfState 将返回STATUS_SUCCESS。 可能的错误返回值包括以下状态代码。

返回代码 Description
STATUS_INVALID_PARAMETER
调用方为组件或组件状态集提供了无效索引。

注解

驱动程序可以调用 PoFxQueryCurrentComponentPerfState 例程来检索组件的给定性能状态集的当前性能状态。 如果调用成功,则使用指向指定集当前性能状态的值的指针覆盖 CurrentPerf 参数。 此值可以是下列值之一,具体取决于驱动程序传递给 PoFxRegisterComponentPerfStates 例程的PO_FX_COMPONENT_PERF_SET结构的内容:

  • 对于表示持续分布性能状态的性能状态集,这是PO_FX_COMPONENT_PERF_SET结构的最小值最大值成员之间的值。
  • 对于表示离散数量的性能状态的性能状态集,此值是PO_FX_COMPONENT_PERF_SET结构成员国的索引。
此调用始终同步执行。

要求

Requirement 价值
最低支持的客户端 从 Windows 10 开始可用。
目标平台 普遍
Header wdm.h
Library Ntoskrnl.lib
DLL Ntoskrnl.exe
IRQL <= DISPATCH_LEVEL

另请参阅

设备性能状态管理

PO_FX_COMPONENT_PERF_INFO

PO_FX_COMPONENT_PERF_SET

PoFxRegisterComponentPerfStates