структура PEP_REQUEST_COMPONENT_PERF_STATE (pep_x.h)

Структура PEP_REQUEST_COMPONENT_PERF_STATE содержит список изменений состояния производительности (P-состояния), запрошенных платформой управления питанием Windows (PoFx), а также сведения о состоянии обработки этих запросов подключаемым модулем расширения платформы (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

Индекс, идентифицирующий компонент. Этот элемент является индексом массива Components в структуре 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-состояния. Задайте значение TRUE, если PEP успешно выполнила все изменения P-состояния, запрошенные в массиве PerfRequests . Установите значение FALSE, если PEP не смог выполнить все запрошенные изменения P-состояния. В этом случае P-состояния в оборудовании остались без изменений. Элемент Succeeded используется только для синхронных изменений P-состояния. Если для параметра PEP задано значение FALSE, PoFx игнорирует значение в элементе Succeeded .

[in] PerfRequestsCount

Количество изменений P-состояния, запрошенных в массиве, на которое указывает элемент PerfRequests .

[in] PerfRequests

Указатель на массив PEP_COMPONENT_PERF_STATE_REQUEST структур. Каждый элемент в массиве задает новый уровень производительности для назначения набору P-состояний. Количество элементов массива задается элементом PerfRequestsCount .

Комментарии

Эта структура используется в уведомлении PEP_DPM_REQUEST_COMPONENT_PERF_STATE . Элементы Структуры DeviceHandle, Component, PerfRequestsCount и PerfRequests содержат входные значения, предоставляемые PoFx при отправке этого уведомления. Элементы Completed и Succeeded содержат выходные значения, которые PEP записывает в структуру в ответ на уведомление.

PEP может выполнять запрошенные изменения P-состояния как синхронно, так и асинхронно. PeP может задать для элемента Completed значение TRUE, чтобы указать, что все запросы в уведомлении PEP_DPM_REQUEST_COMPONENT_PERF_STATE были выполнены синхронно, то есть до возврата из процедуры обратного вызова AcceptDeviceNotification PEP. Кроме того, pep может задать для свойства Completed значение FALSE, чтобы указать, что запросы будут выполняться асинхронно. Чтобы выполнить запросы асинхронно, PEP должен вызвать подпрограмму RequestWorker , чтобы сообщить PoFx, что у PEP есть рабочий запрос для отправки, и PoFx ответит, отправив уведомление о PEP_DPM_WORK в PEP.

PoFx записывает запрошенные изменения P-состояния в массив PerfRequests перед отправкой уведомления PEP_DPM_REQUEST_COMPONENT_PERF_STATE . Если PEP обрабатывает запрошенные изменения P-состояния синхронно, содержимое массива PerfRequests остается действительным только до тех пор, пока не будет возвращена подпрограмма обратного вызова AcceptDeviceNotification . Если запросы выполняются асинхронно, содержимое массива остается действительным до тех пор, пока PEP не вызовет подпрограмму CompleteWork , чтобы уведомить PoFx о том, что PEP выполнила ожидающие запросы.

Требования

Требование Значение
Минимальная версия клиента Поддерживается начиная с Windows 10.
Верхняя часть pep_x.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