NDIS_RELEASE_MUTEX Makro (ndis.h)
Das NDIS_RELEASE_MUTEX Makro gibt das angegebene Mutex-Objekt frei.
Syntax
void NDIS_RELEASE_MUTEX(
_M_
);
Parameter
_M_
Ein Zeiger auf ein initialisiertes NDIS_MUTEX-Typ-Mutex-Objekt. Der Aufrufer initialisierte das Mutex-Objekt in einem vorherigen Aufruf des NDIS_INIT_MUTEX-Makros. NDIS_MUTEX ist ein Wrapper für den KMUTEX-Typ.
Rückgabewert
NDIS_RELEASE_MUTEX gibt einen LONG-Wert zurück. Wenn der Rückgabewert null ist, wurde das Mutex-Objekt losgelassen und befindet sich im signalierten Zustand. Wenn NDIS_RELEASE_MUTEX einen Wert ungleich Null zurückgibt, befindet sich der Mutex nicht im signalisierten Zustand.
Bemerkungen
NDIS-Netzwerktreiber sollten das NDIS_RELEASE_MUTEX Makro verwenden, um einen Mutex freizugeben.
Nur der Thread, der derzeit das Mutex-Objekt enthält, kann es freigeben. Andernfalls tritt eine Fehlerüberprüfung auf. Eine Fehlerüberprüfung tritt auch auf, wenn ein Treiber versucht, ein Mutex-Objekt freizugeben, das sich im signalierten Zustand befindet.
Rufen Sie zum Abrufen des Mutex das NDIS_WAIT_FOR_MUTEX Makro auf. Wenn ein Mutex rekursiv abgerufen wird, muss der Haltethread NDIS_RELEASE_MUTEX dieselbe Häufigkeit aufrufen, mit der der Mutex den Mutex wieder auf den signalisierten Zustand zurückgesetzt hat.
NDIS_RELEASE_MUTEX ist ein NDIS-Wrapper für die KeReleaseMutex Routine.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt in NDIS 6.0 und höher. |
Zielplattform- | Universal |
Header- | ndis.h |
IRQL- | PASSIVE_LEVEL |
DDI-Complianceregeln | Irql_Synch_Function(ndis) |