KeAcquireGuardedMutex-Funktion (wdm.h)
Die KeAcquireGuardedMutex-Routine erwirbt einen bewachten Mutex.
Syntax
void KeAcquireGuardedMutex(
PKGUARDED_MUTEX Mutex
);
Parameter
Mutex
[ein, aus] Zeiger auf die KGUARDED_MUTEX-Struktur für den bewachten Mutex. Diese Struktur muss mit KeInitializeGuardedMutex initialisiert worden sein.
Rückgabewert
Keine
Bemerkungen
Verwenden Sie KeReleaseGuardedMutex , um ein mit KeAcquireGuardedMutex erworbenes Mutex freizugeben.
Wenn der Mutex verfügbar ist, wird KeAcquireGuardedMutex sofort zurückgegeben. Andernfalls wird der aufrufende Thread in einen Wartezustand versetzt, bis der Mutex verfügbar wird. Verwenden Sie KeTryToAcquireGuardedMutex, um den Wartezustand zu vermeiden, wenn der Mutex nicht verfügbar ist.
Ein Thread, der KeAcquireGuardedMutex aufruft , tritt implizit in eine bewachte Region ein, in der alle APCs deaktiviert sind. Sie bleiben deaktiviert, bis der Thread den Mutex mit KeReleaseGuardedMutex freigibt.
Ein bewachter Mutex kann nicht rekursiv abgerufen werden: Wenn ein Thread bereits den Mutex hält, wenn er KeAcquireGuardedMutex aufruft, wird der Thread deadlockt.
Weitere Informationen zu bewachten Mutexes finden Sie unter Fast Mutexes und Guarded Mutexes.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Server) | Windows Server 2003 |
Kopfzeile | wdm.h |
IRQL | <= APC_LEVEL |
DDI-Complianceregeln | HwStorPortProhibitedDIs(storport), IrqlKeApcLte1(wdm) |