Compartir a través de


Función ExAcquireSpinLockExclusiveAtDpcLevel (wdm.h)

La rutina ExAcquireSpinLockExclusiveAtDpcLevel adquiere una bloqueo de giro para acceso exclusivo por parte de un llamador que ya se ejecuta en IRQL >= DISPATCH_LEVEL.

Sintaxis

void ExAcquireSpinLockExclusiveAtDpcLevel(
  [in, out] PEX_SPIN_LOCK SpinLock
);

Parámetros

[in, out] SpinLock

Puntero al bloqueo de giro que se va a adquirir. El autor de la llamada aún no debe poseer este bloqueo de giro.

Valor devuelto

Ninguno

Observaciones

Al entrar a esta rutina, el autor de la llamada debe ejecutarse en IRQL >= DISPATCH_LEVEL. Esta rutina no cambia irQL.

Para liberar el bloqueo de giro, el controlador llama a la rutinaExReleaseSpinLockExclusiveFromDpcLevel.

Un bloqueo de número es una variable de 32 bits de tipo EX_SPIN_LOCK. El controlador debe asignar el almacenamiento para el bloqueo de giro e inicializar el bloqueo de giro en cero. Este almacenamiento debe encontrarse en memoria de espacio del sistema no paginada.

El autor de la llamada debe contener el bloqueo de giro solo brevemente antes de liberarlo. Para obtener más información, vea Introducción a los bloqueos de número.

La adquisición recursiva de un bloqueo de número provoca interbloqueo y no se permite.

Requisitos

Requisito Valor
encabezado de wdm.h
irQL IRQL >= DISPATCH_LEVEL

Consulte también

ExReleaseSpinLockExclusiveFromDpcLevel