KeInitializeTimerEx, fonction (wdm.h)
La routine KeInitializeTimerEx initialise un objet de minuteur de noyau étendu.
Syntaxe
void KeInitializeTimerEx(
[out] PKTIMER Timer,
[in] TIMER_TYPE Type
);
Paramètres
[out] Timer
Pointeur vers un objet minuteur pour lequel l’appelant fournit le stockage.
[in] Type
Spécifie le type de l’objet minuteur, NotificationTimer ou SynchronizationTimer.
Valeur de retour
Aucun
Remarques
L’objet minuteur est initialisé à un état non signalé.
Le stockage d’un objet minuteur doit être résident : dans l’extension de périphérique d’un objet de périphérique créé par le pilote, dans l’extension du contrôleur d’un objet de contrôleur créé par un pilote ou dans un pool non paginé alloué par l’appelant.
Lorsqu’un minuteur de notification expire, tous les threads en attente sont libérés et le minuteur reste dans l’état signalé jusqu’à ce qu’il soit explicitement réinitialisé. Lorsqu’un minuteur de synchronisation expire, il est défini sur un état signalé jusqu’à ce qu’un thread d’attente unique soit libéré, puis le minuteur est réinitialisé à un état non signalé.
Les appelants de KeInitializeTimerEx doivent s’exécuter à IRQL = DISPATCH_LEVEL ou inférieur. Il est préférable d’initialiser des minuteurs à IRQL = PASSIVE_LEVEL.
Pour plus d’informations sur les objets du minuteur, consultez objets de minuteur et les contrôleurs de domaine.
Utilisez keSetTimer ou KeSetTimerEx pour définir quand le minuteur expire.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows 2000. |
plateforme cible | Universel |
d’en-tête | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL (voir la section Remarques) |
règles de conformité DDI | HwStorPortProhibitedDDIs(storport), IrqlKeDispatchLte(wdm) |