Função PoSetDeviceBusyEx (ntifs.h)
A rotina PoSetDeviceBusyEx notifica o power manager de que o dispositivo associado ao contador ocioso especificado está ocupado.
Sintaxe
void PoSetDeviceBusyEx(
[in, out] PULONG IdlePointer
);
Parâmetros
[in, out] IdlePointer
Um ponteiro para um contador ocioso. Esse é um valor de ponteiro que foi retornado anteriormente pela rotinapoRegisterDeviceForIdleDetection. Como PoRegisterDeviceForIdleDetection pode retornar um ponteiro NULL, o chamador deve verificar se o ponteiro não é NULL antes de chamar PoSetDeviceBusyEx.
Valor de retorno
Nenhum
Observações
Essa rotina é uma substituição direta para a macroPoSetDeviceBusy. Se você estiver escrevendo um novo código de driver para Windows Vista com Service Pack 1 (SP1) e versões posteriores do Windows, chame PoSetDeviceBusyEx em vez de PoSetDeviceBusy.
Um driver chama as rotinas PoSetDeviceBusyEx e PoRegisterDeviceForIdleDetection para habilitar a detecção ociosa do sistema para seu dispositivo. Se um dispositivo registrado para detecção ociosa permanecer ocioso durante o período de tempo limite especificado pelo driver, o power manager enviará uma solicitação IRP_MN_SET_POWER para colocar o dispositivo em um estado de suspensão solicitado.
PoSetDeviceBusyEx informa que o dispositivo está ocupado, para que o power manager possa reiniciar sua contagem regressiva ociosa. Se o dispositivo estiver em um estado de suspensão, PoSetDeviceBusyEx não alterará o estado do dispositivo. Ou seja, não faz com que o sistema envie uma solicitação IRP_MN_SET_POWER para despertar o dispositivo.
PoSetDeviceBusyEx foi projetado para uso com operações de E/S relativamente breves em comparação com o período de tempo limite do contador ocioso. Para operações mais longas que podem exceder esse período, use aspoStartDeviceBusye rotinas de PoEndDeviceBusy.
Um driver que faz várias solicitações para operações de E/S breves deve chamar PoSetDeviceBusyEx para cada solicitação de E/S feita.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows Vista com SP1 |
da Plataforma de Destino | Universal |
cabeçalho | ntifs.h (incluem Wdm.h, Ntddk.h, Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | Qualquer nível |