Função PoStartDeviceBusy (wdm.h)

A rotina 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.

Retornar valor

Nenhum

Comentários

As rotinas PoStartDeviceBusy e PoEndDeviceBusy marcam o início e o fim de um período de tempo em que um dispositivo está ocupado. Cada chamada para PoStartDeviceBusy deve ser seguida por uma chamada correspondente para PoEndDeviceBusy.

Para cada dispositivo, o 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 de ocupado em um. Uma chamada PoEndDeviceBusy diminui a contagem de ocupado em um. Uma contagem de ocupado diferente de zero desabilita o contador ocioso para o dispositivo. Depois que a contagem de ocupado 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 PoSetDeviceBusyEx (ou a macro PoSetDeviceBusy ). Para desabilitar o contador ocioso durante um período de disponibilidade estendido, um driver pode chamar a rotina PoRegisterDeviceForIdleDetection 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 o uso dessas rotinas em um novo código que você escreve para o Windows 7 e versões posteriores do Windows.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível a partir do Windows 7.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Qualquer nível

Confira também

PoEndDeviceBusy

PoRegisterDeviceForIdleDetection

PoSetDeviceBusy