Función NdisReleaseRWLock (ndis.h)
La función NdisReleaseRWLock libera un bloqueo de lectura y escritura que el autor de la llamada usa para obtener acceso a los recursos que se comparten entre subprocesos de controlador.
Sintaxis
void NdisReleaseRWLock(
[in] PNDIS_RW_LOCK_EX Lock,
[in] PLOCK_STATE_EX LockState
);
Parámetros
[in] Lock
Puntero a una variable de NDIS_RW_LOCK_EX opaca que representa un bloqueo. El autor de la llamada puede usar este bloqueo para obtener acceso de escritura o lectura a los recursos que se comparten entre subprocesos de controladores que no son ISR.
[in] LockState
Puntero a una variable de LOCK_STATE_EX opaca que realiza un seguimiento del estado del bloqueo. Esta variable existe en el intervalo entre las veces que el autor de la llamada obtiene y libera el bloqueo. El autor de la llamada debe usar una variable diferente de tipo LOCK_STATE_EX para cada intento que realice para obtener el bloqueo del mismo subproceso de controlador que no es ISR.
Valor devuelto
None
Observaciones
Los controladores NDIS llaman a la función NdisReleaseRWLock para liberar un bloqueo de lectura y escritura obtenido anteriormente mediante una llamada a
NdisAcquireRWLockRead o Función NdisAcquireRWLockWrite .
Un controlador debe obtener un bloqueo de lectura y escritura para que el controlador pueda llamar a NdisReleaseRWLock. Cada llamada para obtener un bloqueo requiere una llamada recíproca a NdisReleaseRWLock.
La adquisición de un NDIS_RW_LOCK_EX se afinidad con el procesador actual. Los controladores deben llamar a NdisReleaseRWLock en el mismo procesador que realizó la llamada correspondiente a NdisAcquireRWLockRead o NdisAcquireRWLockWrite.
NdisReleaseRWLock restaura el IRQL original que usó su llamador antes de obtener el bloqueo.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Compatible con NDIS 6.20 y versiones posteriores. |
Plataforma de destino | Universal |
Encabezado | ndis.h (incluya Ndis.h) |
Library | Ndis.lib |
IRQL | DISPATCH_LEVEL |