Compartilhar via


Macro PoSetDeviceBusy (wdm.h)

A macro PoSetDeviceBusy notifica o power manager de que o dispositivo associado ao IdlePointer está ocupado.

Sintaxe

void PoSetDeviceBusy(
  [in, out]  IdlePointer
);

Parâmetros

[in, out] IdlePointer

Especifica um ponteiro ocioso não NULL que foi retornado anteriormente por PoRegisterDeviceForIdleDetection. Observe que PoRegisterDeviceForIdleDetection pode retornar um ponteiro NULL . Um chamador de PoSetDeviceBusy deve verificar se o ponteiro não é NULL antes de passá-lo para PoSetDeviceBusy.

Retornar valor

Nenhum

Comentários

A rotina PoSetDeviceBusyEx é uma substituição direta para a macro PoSetDeviceBusy . 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 usa PoSetDeviceBusy junto com PoRegisterDeviceForIdleDetection para habilitar a detecção ociosa do sistema para seu dispositivo. Se um dispositivo registrado para detecção ociosa ficar ocioso, o power manager enviará uma solicitação de IRP_MN_SET_POWER para colocar o dispositivo em um estado de suspensão solicitado.

PoSetDeviceBusy relata que o dispositivo está ocupado, para que o power manager possa reiniciar sua contagem regressiva ociosa. Se o dispositivo não estiver ligado, PoSetDeviceBusy não alterará seu estado. Ou seja, isso não faz com que o sistema envie uma solicitação de ativação.

Um driver deve chamar PoSetDeviceBusy em cada solicitação de E/S.

Requisitos

Requisito Valor
Cabeçalho wdm.h (include Wdm.h)
IRQL Qualquer nível