Compartir a través de


Función ExReleaseFastMutex (wdm.h)

La rutina ExReleaseFastMutex libera la propiedad de una exclusión mutua rápida adquirida con ExAcquireFastMutex o ExTryToAcquireFastMutex.

Sintaxis

void ExReleaseFastMutex(
  PFAST_MUTEX FastMutex
);

Parámetros

FastMutex

[in, out] Puntero a la exclusión mutua rápida que se va a liberar.

Valor devuelto

None

Observaciones

ExReleaseFastMutex libera la propiedad de la exclusión mutua rápida dada y establece el IRQL en el valor en el que se estaba ejecutando el autor de la llamada antes de llamarlo ExAcquireFastMutex. Si el IRQL anterior era menor que APC_LEVEL, se vuelve a habilitar la entrega de LAS API al subproceso actual.

Se trata de un error de programación para llamar a ExReleaseFastMutex con un FastMutex que se adquirió mediante ExAcquireFastMutexUnsafe. Los controladores deben liberar una exclusión mutua rápida del mismo subproceso que lo adquirió. Las exclusión mutuas rápidas deben liberarse en el orden opuesto del orden en que se adquirieron.

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

Los autores de llamadas de ExReleaseFastMutex deben ejecutarse en IRQL = APC_LEVEL. En la mayoría de los casos, el IRQL ya se establecerá en APC_LEVEL antes de que se llame a ExReleaseFastMutex porque ExAcquireFastMutex ya ha establecido IRQL en APC_LEVEL automáticamente. Sin embargo, si el autor de la llamada cambia el IRQL después de que Se devuelva ExAcquireFastMutex , el autor de la llamada debe establecer explícitamente irQL en APC_LEVEL antes de llamar a ExReleaseFastMutex.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000
Encabezado wdm.h
IRQL APC_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDDIs(storport)

Consulte también

FAST_MUTEX

ExAcquireFastMutex

ExInitializeFastMutex

ExTryToAcquireFastMutex