Função PoStartDeviceBusy (ntifs.h)
A rotina de PoStartDeviceBusy marca o início de um período em que o dispositivo está ocupado.
Sintaxe
void PoStartDeviceBusy(
[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 rotina poRegisterDeviceForIdleDetection. Como PoRegisterDeviceForIdleDetection pode retornar um ponteiro NULL, o chamador deve verificar se o ponteiro não é NULL antes de chamar PoStartDeviceBusy.
Valor de retorno
Nenhum
Observações
As rotinas PoStartDeviceBusy e PoEndDeviceBusy marcam o início e o fim de um período em que um dispositivo está ocupado. Cada chamada para PoStartDeviceBusy deve ser seguida por uma chamada correspondente para PoEndDeviceBusy.
Para cada dispositivo, o do power manager mantém uma contagem do número de chamadas PoStartDeviceBusy pendentes para as quais ele ainda não recebeu uma chamada PoEndDeviceBusy correspondente. Uma chamada PoStartDeviceBusy incrementa a contagem ocupada por um. Uma chamada PoEndDeviceBusy diminui a contagem ocupada por um. Uma contagem de ocupado diferente de zero desabilita o contador ocioso para o dispositivo. Depois que a contagem ocupada atinge zero, o power manager redefine o contador ocioso para o período de tempo limite e habilita o contador.
Em vez de usar as rotinas PoStartDeviceBusy e PoEndDeviceBusy para redefinir o contador ocioso, você pode chamar a rotina de PoSetDeviceBusyEx (ou a macro PoSetDeviceBusy). Para desabilitar o contador ocioso durante um período de atividade estendido, um driver pode chamar o PoRegisterDeviceForIdleDetection rotina para desabilitar e habilitar notificações ociosas no início e no final do período ocupado. No entanto, PoStartDeviceBusy e PoEndDeviceBusy normalmente são mais convenientes de usar para essa finalidade e você deve considerar usar essas rotinas em um novo código que você escreve para o Windows 7 e versões posteriores do Windows.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 7. |
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 |