Compartir a través de


Función KeAcquireGuardedMutex (wdm.h)

La rutina KeAcquireGuardedMutex adquiere una exclusión mutua protegida.

Sintaxis

void KeAcquireGuardedMutex(
  PKGUARDED_MUTEX Mutex
);

Parámetros

Mutex

[in, out] Puntero a la estructura de KGUARDED_MUTEX para la exclusión mutua protegida. Esta estructura debe haberse inicializado con KeInitializeGuardedMutex.

Valor devuelto

None

Observaciones

Use KeReleaseGuardedMutex para liberar una exclusión mutua adquirida con KeAcquireGuardedMutex.

Si la exclusión mutua está disponible, KeAcquireGuardedMutex devuelve inmediatamente. De lo contrario, el subproceso de llamada se coloca en un estado de espera hasta que la exclusión mutua esté disponible. Para evitar entrar en un estado de espera cuando la exclusión mutua no está disponible, use KeTryToAcquireGuardedMutex.

Un subproceso que llama a KeAcquireGuardedMutex entra implícitamente en una región protegida, donde todas las API están deshabilitadas. Permanecen deshabilitados hasta que el subproceso libera la exclusión mutua con KeReleaseGuardedMutex.

Una exclusión mutua protegida no se puede adquirir de forma recursiva: si un subproceso ya contiene la exclusión mutua cuando llama a KeAcquireGuardedMutex, el subproceso se interbloqueará.

Para obtener más información sobre las exclusión mutuas protegidas, vea Exclusión mutua rápida y Exclusión mutua protegida.

Requisitos

Requisito Value
Servidor mínimo compatible Windows Server 2003
Encabezado wdm.h
IRQL <= APC_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport), IrqlKeApcLte1(wdm)

Consulte también

KGUARDED_MUTEX

KeReleaseGuardedMutex