PEP_REQUEST_COMPONENT_PERF_STATE結構(pep_x.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_DEVICE_REGISTER_V2 結構中 PEP 先前針對此裝置 PEP_DPM_REGISTER_DEVICE 通知提供的 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 狀態會保持不變。 成功 成員僅用於 同步 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 通知會使用此結構。 DeviceHandle、元件、PerfRequestsCount,以及 PerfRequests 結構的成員包含傳送此通知時 PoFx 提供的輸入值。 Completed 和 Succeeded 成員包含 PEP 寫入結構的輸出值,以回應通知。
PEP 可以同步或異步完成要求的 P 狀態變更。 PEP 可以將 Completed 成員設定為 TRUE,表示 PEP_DPM_REQUEST_COMPONENT_PERF_STATE 通知中的所有要求都已同步完成,也就是在 PEP AcceptDeviceNotification 回呼例程傳回之前。 或者,PEP 可以將 Completed 設定為 FALSE,表示要求將以異步方式完成。 若要以異步方式完成要求,PEP 應該呼叫 RequestWorker 例程,以通知 PoFx PEP 有提交的工作要求,而 PoFx 會藉由傳送 PEP_DPM_WORK 通知給 PEP 來回應。
PoFx 會在傳送 PEP_DPM_REQUEST_COMPONENT_PERF_STATE 通知之前,將要求的 P 狀態變更寫入至 PerfRequests 陣列。 如果 PEP 處理要求的 P 狀態變更 同步,則 perfRequests 陣列 的內容只會維持有效,直到 AcceptDeviceNotification 回呼例程傳回為止。 如果要求 異步完成,陣列內容會維持有效狀態,直到 PEP 呼叫 CompleteWork 例程,以通知 PoFx PEP 已完成擱置的要求。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 10 開始支援。 |
標頭 | pep_x.h (包括 Pep_x.h) |
另請參閱
PEP_COMPONENT_PERF_STATE_REQUEST