Macro PoSetDeviceBusy (wdm.h)
La macro PoSetDeviceBusyinforma che il dispositivo associato a IdlePointer è occupato.
Sintassi
void PoSetDeviceBusy(
[in, out] IdlePointer
);
Parametri
[in, out] IdlePointer
Specifica un puntatore inattivo non NULL restituito in precedenza da PoRegisterDeviceForIdleDetection. Si noti che PoRegisterDeviceForIdleDetection potrebbe restituire un puntatore NULL . Un chiamante di PoSetDeviceBusy deve verificare che il puntatore non sia NULL prima di passarlo a PoSetDeviceBusy.
Valore restituito
nessuno
Osservazioni
La routine PoSetDeviceBusyEx è una sostituzione diretta della macro PoSetDeviceBusy . Se si scrive nuovo codice driver per Windows Vista con Service Pack 1 (SP1) e versioni successive di Windows, chiamare PoSetDeviceBusyEx anziché PoSetDeviceBusy.
Un driver usa PoSetDeviceBusy insieme a PoRegisterDeviceForIdleDetection per abilitare il rilevamento inattiva del sistema per il dispositivo. Se un dispositivo registrato per il rilevamento inattivo diventa inattivo, power manager invia una richiesta di IRP_MN_SET_POWER per inserire il dispositivo in uno stato di sospensione richiesto.
PoSetDeviceBusy segnala che il dispositivo è occupato, in modo che il risparmio energia possa riavviare il conto inattiva. Se il dispositivo non è alimentato, PoSetDeviceBusy non modifica lo stato. Ciò significa che il sistema non invia una richiesta di alimentazione.
Un driver deve chiamare PoSetDeviceBusy in ogni richiesta di I/O.
Requisiti
Requisito | Valore |
---|---|
Intestazione | wdm.h (include Wdm.h) |
IRQL | Qualsiasi livello |