macro NDIS_RELEASE_MUTEX (ndis.h)

A macro NDIS_RELEASE_MUTEX libera o objeto mutex especificado.

Sintaxe

void NDIS_RELEASE_MUTEX(
   _M_
);

Parâmetros

_M_

Um ponteiro para um objeto mutex do tipo NDIS_MUTEX inicializado. O chamador inicializou o objeto mutex em uma chamada anterior à macro NDIS_INIT_MUTEX . NDIS_MUTEX é um wrapper para o tipo KMUTEX.

Retornar valor

NDIS_RELEASE_MUTEX retorna um valor LONG. Se o valor retornado for zero, o objeto mutex foi liberado e está no estado sinalizado. Se NDIS_RELEASE_MUTEX retornar um valor diferente de zero, o mutex não estará no estado sinalizado.

Comentários

Os drivers de rede NDIS devem usar a macro NDIS_RELEASE_MUTEX para liberar um mutex.

Somente o thread que está segurando o objeto mutex pode liberá-lo. Caso contrário, ocorrerá uma verificação de bugs. Uma verificação de bugs também ocorre se um driver tenta liberar um objeto mutex que está no estado sinalizado.

Para adquirir o mutex, chame a macro NDIS_WAIT_FOR_MUTEX . Se um mutex for adquirido recursivamente, o thread de retenção deverá chamar NDIS_RELEASE_MUTEX o mesmo número de vezes que adquiriu o mutex para defini-lo de volta para o estado sinalizado.

NDIS_RELEASE_MUTEX é um wrapper NDIS para a rotina KeReleaseMutex .

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte no NDIS 6.0 e posterior.
Plataforma de Destino Universal
Cabeçalho ndis.h
IRQL PASSIVE_LEVEL
Regras de conformidade de DDI Irql_Synch_Function(ndis)

Confira também

KeReleaseMutex

NDIS_INIT_MUTEX

NDIS_WAIT_FOR_MUTEX