Partager via


KeSrcuReadUnlock, fonction (wdm.h)

La routine KeSrcuReadUnlock quitte une section critique RCU côté lecture d’une partition en lecture-Copy-Update (SRCU) spécifiée.

Syntaxe

VOID KeSrcuReadUnlock(
  [in] PKE_SRCU      Rcu,
  [in] PKE_SRCU_LOCK Lock
);

Paramètres

[in] Rcu

Pointeur vers l’instance SRCU utilisée dans l’appel KeSrcuReadLock correspondant.

[in] Lock

Pointeur vers la structure KE_SRCU_LOCK qui a été remplie par l’appel KeSrcuReadLock correspondant.

Valeur retournée

Aucun

Remarques

KeSrcuReadUnlock quitte une section critique côté lecture entrée avec KeSrcuReadLock. Cette fonction doit être appelée dans le même thread que celui qui a appelé keSrcuReadLock correspondant.

Cette fonction peut être appelée à n’importe quel irQL lorsque le thread se trouve toujours sur le même processeur. Si le thread a migré vers un autre processeur, l’irQL effectif maximal est DISPATCH_LEVEL en raison des exigences d’interruption interprocesseur (IPI).

Cette fonction peut être appelée avec des interruptions désactivées.

Si le thread appelant a migré vers un autre processeur depuis l’appel de KeSrcuReadLock, cette fonction :

  1. Détecter la modification du processeur.
  2. Envoyez une interruption interprocesseur (IPI) au processeur d’origine.
  3. Terminez l’opération de déverrouillage à distance sur le processeur d’origine.

Après cet appel, les données protégées ne doivent plus être consultées.

Spécifications

Requirement Valeur
plateforme cible Universal
Header wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL N’importe quel niveau (voir Remarques)

Voir aussi

KE_SRCU_LOCK

KeSrcuAllocate

KeSrcuFree

KeSrcuReadLock

KeSrcuSynchronize