NDIS_RELEASE_MUTEX macro (ndis.h)

La macro NDIS_RELEASE_MUTEX libera el objeto de exclusión mutua especificado.

Sintaxis

void NDIS_RELEASE_MUTEX(
   _M_
);

Parámetros

_M_

Puntero a un objeto de exclusión mutua de tipo NDIS_MUTEX inicializado. El autor de la llamada inicializó el objeto de exclusión mutua en una llamada anterior a la macro NDIS_INIT_MUTEX . NDIS_MUTEX es un contenedor para el tipo KMUTEX.

Valor devuelto

NDIS_RELEASE_MUTEX devuelve un valor LONG. Si el valor devuelto es cero, el objeto de exclusión mutua se liberó y se encuentra en estado señalado. Si NDIS_RELEASE_MUTEX devuelve un valor distinto de cero, la exclusión mutua no está en estado señalado.

Comentarios

Los controladores de red NDIS deben usar la macro NDIS_RELEASE_MUTEX para liberar una exclusión mutua.

Solo el subproceso que contiene actualmente el objeto de exclusión mutua puede liberarlo. De lo contrario, se produce una comprobación de errores. También se produce una comprobación de errores si un controlador intenta liberar un objeto de exclusión mutua que está en estado señalado.

Para adquirir la exclusión mutua, llame a la macro NDIS_WAIT_FOR_MUTEX . Si una exclusión mutua se adquiere de forma recursiva, el subproceso de retención debe llamar a NDIS_RELEASE_MUTEX el mismo número de veces que adquirió la exclusión mutua para volver a establecerla en el estado señalado.

NDIS_RELEASE_MUTEX es un contenedor NDIS para la rutina KeReleaseMutex .

Requisitos

Requisito Value
Cliente mínimo compatible Compatible con NDIS 6.0 y versiones posteriores.
Plataforma de destino Universal
Encabezado ndis.h
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de DDI Irql_Synch_Function(ndis)

Consulte también

KeReleaseMutex

NDIS_INIT_MUTEX

NDIS_WAIT_FOR_MUTEX