macro NDIS_RELEASE_MUTEX (ndis.h)
La macro NDIS_RELEASE_MUTEX libère l’objet mutex spécifié.
Syntaxe
void NDIS_RELEASE_MUTEX(
_M_
);
Paramètres
_M_
Pointeur vers un objet mutex de type NDIS_MUTEX initialisé. L’appelant a initialisé l’objet mutex dans un appel antérieur à la macro NDIS_INIT_MUTEX . NDIS_MUTEX est un wrapper pour le type KMUTEX.
Valeur retournée
NDIS_RELEASE_MUTEX retourne une valeur LONG. Si la valeur de retour est zéro, l’objet mutex a été libéré et est dans l’état signalé. Si NDIS_RELEASE_MUTEX retourne une valeur différente de zéro, le mutex n’est pas dans l’état signalé.
Remarques
Les pilotes réseau NDIS doivent utiliser la macro NDIS_RELEASE_MUTEX pour libérer un mutex.
Seul le thread qui contient actuellement l’objet mutex peut le libérer. Sinon, une vérification d’erreur se produit. Une vérification d’erreur se produit également si un pilote tente de libérer un objet mutex à l’état signalé.
Pour acquérir le mutex, appelez la macro NDIS_WAIT_FOR_MUTEX . Si un mutex est acquis de manière récursive, le thread de conservation doit appeler NDIS_RELEASE_MUTEX le même nombre de fois qu’il a acquis le mutex pour le remettre à l’état signalé.
NDIS_RELEASE_MUTEX est un wrapper NDIS pour la routine KeReleaseMutex .
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge dans NDIS 6.0 et versions ultérieures. |
Plateforme cible | Universal |
En-tête | ndis.h |
IRQL | PASSIVE_LEVEL |
Règles de conformité DDI | Irql_Synch_Function(ndis) |