PEP_REQUEST_COMPONENT_PERF_STATE 结构 (pepfx.h)

PEP_REQUEST_COMPONENT_PERF_STATE结构包含 Windows 电源管理框架 (PoFx) 请求的性能状态 (P 状态) 更改的列表,以及有关平台扩展插件 (PEP) 处理这些请求的状态信息。

语法

typedef struct _PEP_REQUEST_COMPONENT_PERF_STATE {
  [in]  PEPHANDLE                         DeviceHandle;
  [in]  ULONG                             Component;
  [out] BOOLEAN                           Completed;
  [out] BOOLEAN                           Succeeded;
  [in]  ULONG                             PerfRequestsCount;
  [in]  PPEP_COMPONENT_PERF_STATE_REQUEST PerfRequests;
} PEP_REQUEST_COMPONENT_PERF_STATE, *PPEP_REQUEST_COMPONENT_PERF_STATE;

成员

[in] DeviceHandle

标识设备的 PEPHANDLE 值。 PEP 提供了此句柄,以响应以前的 PEP_DPM_REGISTER_DEVICE 通知。

[in] Component

标识组件的索引。 此成员是 PEP 先前为响应此设备的PEP_DPM_REGISTER_DEVICE通知而提供的 PEP_DEVICE_REGISTER_V2 结构中的 Components 数组的索引。 如果 Components 数组包含 N 个元素,则组件索引的范围为 0 到 N–1。

[out] Completed

PEP 是否已完成请求的 P 状态更改。 设置为 TRUE 以指示 P 状态更改同步完成。 设置为 FALSE 以指示请求的 P 状态更改处于挂起状态,并将由 PEP 工作线程异步完成。 有关详细信息,请参阅“备注”。

[out] Succeeded

请求的 P 状态更改是否已成功完成。 如果 PEP 已成功完成 PerfRequests 数组中请求的所有 P 状态更改,则设置为 TRUE。 如果 PEP 无法执行请求的所有 P 状态更改,则设置为 FALSE,在这种情况下,硬件中的 P 状态保持不变。 Succeeded 成员仅用于同步 P 状态更改。 如果 PEP 将 Completed 设置为 FALSE,PoFx 将忽略 Succeeded 成员中的值。

[in] PerfRequestsCount

PerfRequests 成员指向的数组中请求的 P 状态更改数。

[in] PerfRequests

指向PEP_COMPONENT_PERF_STATE_REQUEST结构的数组 指针。 数组中的每个元素都指定要分配给 P 状态集的新性能级别。 数组元素的数目由 PerfRequestsCount 成员指定。

注解

此结构由 PEP_DPM_REQUEST_COMPONENT_PERF_STATE 通知使用。 结构的 DeviceHandleComponentPerfRequestsCountPerfRequests 成员包含 PoFx 在发送此通知时提供的输入值。 CompletedSucceeded 成员包含 PEP 为响应通知而写入结构的输出值。

PEP 可以同步或异步完成请求的 P 状态更改。 PEP 可以将 Completed 成员设置为 TRUE,以指示 PEP_DPM_REQUEST_COMPONENT_PERF_STATE 通知中的所有请求都已同步完成,即在 PEP 的 AcceptDeviceNotification 回调例程返回之前。 或者,PEP 可以将 Completed 设置为 FALSE 以指示请求将以异步方式完成。 若要异步完成请求,PEP 应调用 RequestWorker 例程以通知 PoFx PEP 有要提交的工作请求,PoFx 将通过向 PEP 发送 PEP_DPM_WORK 通知来响应。

PoFx 在发送PEP_DPM_REQUEST_COMPONENT_PERF_STATE通知之前,将请求的 P 状态更改写入 PerfRequests 数组。 如果 PEP 同步处理请求的 P 状态更改, 则 PerfRequests 数组的内容仅在 AcceptDeviceNotification 回调例程返回之前保持有效。 如果请求以 异步方式完成,则数组内容将一直有效,直到 PEP 调用 [CompleteWork 例程,以通知 PoFx PEP 已完成挂起的请求。

要求

要求
最低受支持的客户端 从 Windows 10 开始支持。
标头 pepfx.h (包括 Pep_x.h)

另请参阅

AcceptDeviceNotification

PEP_COMPONENT_PERF_STATE_REQUEST

PEP_DEVICE_REGISTER_V2

PEP_DPM_REGISTER_DEVICE

PEP_DPM_REQUEST_COMPONENT_PERF_STATE

PEP_DPM_WORK

RequestWorker