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

None

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 un pilote, dans l’extension de contrôleur d’un objet contrôleur créé par le 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 à 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 seul thread en attente soit libéré, puis que le minuteur soit réinitialisé à un état non signalé.

Les appelants de KeInitializeTimerEx doivent être en cours d’exécution à 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 DPC.

Utilisez KeSetTimer ou KeSetTimerEx pour définir quand le minuteur expire.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible à partir de Windows 2000.
Plateforme cible Universal
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 Notes)
Règles de conformité DDI HwStorPortProhibitedDDIs(storport), IrqlKeDispatchLte(wdm)

Voir aussi

KeCancelTimer

KeReadStateTimer

KeSetTimer

KeSetTimerEx

KeWaitForMultipleObjects

KeWaitForSingleObject