Partager via


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)

Voir aussi

keCancelTimer

KeReadStateTimer

keSetTimer

KeSetTimerEx

KeWaitForMultipleObjects

KeWaitForSingleObject