Partilhar via


Função IoInitializeTimer (wdm.h)

A rotina de IoInitializeTimer configura uma rotina de do IoTimer fornecida pelo driver associada a um determinado objeto de dispositivo.

Sintaxe

NTSTATUS IoInitializeTimer(
  [in]           PDEVICE_OBJECT         DeviceObject,
  [in]           PIO_TIMER_ROUTINE      TimerRoutine,
  [in, optional] __drv_aliasesMem PVOID Context
);

Parâmetros

[in] DeviceObject

Ponteiro para um objeto de dispositivo que representa um dispositivo no qual as operações de E/S podem perder tempo.

[in] TimerRoutine

Ponteiro para a rotina de do IoTimer fornecida pelo driver.

[in, optional] Context

Ponteiro para o contexto determinado pelo driver com o qual sua rotina de do IoTimer será chamada.

Valor de retorno

IoInitializeTimer retornará STATUS_SUCCESS se a rotina de do IoTimer estiver configurada.

Observações

IoInitializeTimer deve ser chamado apenas uma vez por objeto de dispositivo.

A rotina de do IoTimer de do driver é chamada uma vez por segundo depois que o driver habilita o temporizador chamando IoStartTimer. O driver pode desabilitar o temporizador chamando IoStopTimer e pode reenabilitá-lo novamente com IoStartTimer.

A rotina de IoTimer do do driver é chamada em IRQL = DISPATCH_LEVEL e, portanto, não deve conter código paginável.

Quando o temporizador está em execução, o gerente de E/S chama a rotina de do IoTimer fornecida pelo driver uma vez por segundo. Os drivers cujas rotinas de tempo limite devem ser chamadas em intervalos variáveis ou em intervalos de granularidade mais fina podem configurar uma rotina CustomTimerDpc e usar as rotinas KeXxxTimer.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível a partir do Windows 2000.
da Plataforma de Destino Universal
cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
regras de conformidade de DDI HwStorPortProhibitedDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm)

Consulte também

IoStartTimer

IoStopTimer

do IoTimer

KeInitializeTimer

KeSetTimer