Funzione IoInitializeTimer (wdm.h)

La routine IoInitializeTimer configura una routine IoTimer fornita dal driver associata a un determinato oggetto dispositivo.

Sintassi

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

Parametri

[in] DeviceObject

Puntatore a un oggetto dispositivo che rappresenta un dispositivo in cui le operazioni di I/O possono eseguire il timeout.

[in] TimerRoutine

Puntatore alla routine IoTimer fornita dal driver.

[in, optional] Context

Puntatore al contesto determinato dal driver con cui verrà chiamata la routine IoTimer .

Valore restituito

IoInitializeTimer restituisce STATUS_SUCCESS se viene configurata la routine IoTimer .

Commenti

IoInitializeTimer deve essere chiamato una sola volta per ogni oggetto dispositivo.

La routine IoTimer di un driver viene chiamata una volta al secondo dopo che il driver abilita il timer chiamando IoStartTimer. Il driver può disabilitare il timer chiamando IoStopTimer e può riabilitarlo con IoStartTimer.

La routine IoTimer del driver viene chiamata in IRQL = DISPATCH_LEVEL e pertanto non deve contenere codice paginabile.

Quando il timer è in esecuzione, il gestore I/O chiama la routine IoTimer fornita dal driver una volta al secondo. I driver le cui routine di timeout devono essere chiamate a intervalli di variabili o a intervalli di granularità più fine possono configurare una routine CustomTimerDpc e usare le routine KeXxxTimer .

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 2000.
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Regole di conformità DDI HwStorPortProhibitedDDDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm)

Vedi anche

IoStartTimer

IoStopTimer

IoTimer

KeInitializeTimer

KeSetTimer