Функция KeAcquireGuardedMutex (wdm.h)
KeAcquireGuardedMutex подпрограмма получает защищенный мьютекс.
Синтаксис
void KeAcquireGuardedMutex(
PKGUARDED_MUTEX Mutex
);
Параметры
Mutex
[in, out] Указатель на структуру KGUARDED_MUTEX для защищенного мьютекса. Эта структура должна быть инициализирована с помощью KeInitializeGuardedMutex.
Возвращаемое значение
Никакой
Замечания
Используйте KeReleaseGuardedMutex, чтобы освободить мьютекс, приобретенный с KeAcquireGuardedMutex.
Если мьютекс доступен, KeAcquireGuardedMutex немедленно возвращается. В противном случае вызывающий поток помещается в состояние ожидания, пока мьютекс не станет доступным. Чтобы избежать ввода состояния ожидания при недоступности мьютекса, используйте KeTryToAcquireGuardedMutex.
Поток, вызывающий KeAcquireGuardedMutex неявно входит в защищенный регион, где все API отключены. Они остаются отключенными, пока поток не освобождает мьютекс с KeReleaseGuardedMutex.
Защищенный мьютекс нельзя получить рекурсивно: если поток уже держит мьютекс при вызове KeAcquireGuardedMutex, поток будет взаимоблокировкой.
Дополнительные сведения об защищенных мьютексах см. в разделе Fast Mutexes и Guarded Mutexes.
Требования
Требование | Ценность |
---|---|
минимальный поддерживаемый сервер | Windows Server 2003 |
заголовка | wdm.h |
IRQL | <= APC_LEVEL |
правил соответствия DDI | HwStorPortProhibitedDIs(storport), IrqlKeApcLte1(wdm) |