Funzione KeInitializeTimerEx (wdm.h)
La routine KeInitializeTimerEx inizializza un oggetto timer del kernel esteso.
Sintassi
void KeInitializeTimerEx(
[out] PKTIMER Timer,
[in] TIMER_TYPE Type
);
Parametri
[out] Timer
Puntatore a un oggetto timer, per il quale il chiamante fornisce lo spazio di archiviazione.
[in] Type
Specifica il tipo dell'oggetto timer, NotificationTimer o SynchronizationTimer.
Valore restituito
Nessuno
Osservazioni
L'oggetto timer viene inizializzato in uno stato non segnalato.
L'archiviazione per un oggetto timer deve essere residente: nell'estensione del dispositivo di un oggetto dispositivo creato dal driver, nell'estensione del controller di un oggetto controller creato dal driver o in un pool non di paging allocato dal chiamante.
Quando un timer di notifica scade, tutti i thread in attesa vengono rilasciati e il timer rimane nello stato segnalato fino a quando non viene reimpostato in modo esplicito. Quando un timer di sincronizzazione scade, viene impostato su uno stato segnalato fino al rilascio di un singolo thread in attesa e quindi il timer viene reimpostato su uno stato non segnalato.
I chiamanti di KeInitializeTimerEx devono essere in esecuzione in IRQL = DISPATCH_LEVEL o inferiore. È consigliabile inizializzare i timer in IRQL = PASSIVE_LEVEL.
Per altre informazioni sugli oggetti timer, vedere oggetti timer e controller di dominio.
Usare KeSetTimer o KeSetTimerEx per definire quando il timer scadrà.
Fabbisogno
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 | <= DISPATCH_LEVEL (vedere la sezione Osservazioni) |
regole di conformità DDI | HwStorPortProhibitedDDIs(storport), IrqlKeDispatchLte(wdm) |