Compartir a través de


Función KeSrcuReadUnlock (wdm.h)

La rutina KeSrcuReadUnlock sale de una sección crítica de RCU del lado de lectura de una partición de lecturaCopy-Update (SRCU) especificada.

Syntax

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

Parámetros

[in] Rcu

Puntero a la instancia de SRCU que se usó en la llamada KeSrcuReadLock correspondiente.

[in] Lock

Puntero a la estructura KE_SRCU_LOCK rellenada por la llamada KeSrcuReadLock correspondiente.

Valor devuelto

Ninguno

Observaciones

KeSrcuReadUnlock sale de una sección crítica de lectura que se especificó con KeSrcuReadLock. Se debe llamar a esta función en el mismo subproceso que llamó al keSrcuReadLock correspondiente.

Se puede llamar a esta función en cualquier IRQL cuando el subproceso todavía está en el mismo procesador. Si el subproceso migrado a otro procesador, el IRQL efectivo máximo se DISPATCH_LEVEL debido a los requisitos de interrupción entre procesadores (IPI).

Se puede llamar a esta función con interrupciones deshabilitadas.

Si el subproceso de llamada se migró a un procesador diferente, ya que llama a KeSrcuReadLock, esta función hará lo siguiente:

  1. Detecte el cambio del procesador.
  2. Envíe una interrupción entre procesadores (IPI) al procesador original.
  3. Complete la operación de desbloqueo de forma remota en el procesador original.

Después de esta llamada, ya no se debe tener acceso a los datos protegidos.

Requisitos

Requirement Importancia
de la plataforma de destino de Universal
Header wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL de NtosKrnl.exe
irQL Cualquier nivel (vea comentarios)

Consulte también

KE_SRCU_LOCK

KeSrcuAllocate

KeSrcuFree

KeSrcuReadLock

KeSrcuSynchronize