Поделиться через


Функция KeAcquireGuardedMutex (wdm.h)

Подпрограмма KeAcquireGuardedMutex получает защищенный мьютекс.

Синтаксис

void KeAcquireGuardedMutex(
  PKGUARDED_MUTEX Mutex
);

Параметры

Mutex

[вход, выход] Указатель на структуру KGUARDED_MUTEX для защищенного мьютекса. Эта структура должна быть инициализирована с помощью KeInitializeGuardedMutex.

Возвращаемое значение

None

Remarks

Используйте KeReleaseGuardedMutex , чтобы освободить мьютекс, полученный с помощью KeAcquireGuardedMutex.

Если мьютекс доступен, KeAcquireGuardedMutex возвращается немедленно. В противном случае вызывающий поток переводится в состояние ожидания, пока мьютекс не станет доступным. Чтобы избежать ввода состояния ожидания, когда мьютекс недоступен, используйте KeTryToAcquireGuardedMutex.

Поток, вызывающий KeAcquireGuardedMutex , неявно входит в защищенную область, где отключены все APC. Они остаются отключенными до тех пор, пока поток не выпустит мьютекс с keReleaseGuardedMutex.

Защищенный мьютекс не может быть получен рекурсивно: если поток уже содержит мьютекс при вызове KeAcquireGuardedMutex, поток будет взаимоблокирован.

Дополнительные сведения о защищенных мьютексах см. в разделе Быстрые мьютексы и Защищенные мьютексы.

Требования

Требование Значение
Минимальная версия сервера Windows Server 2003
Верхняя часть wdm.h
IRQL <= APC_LEVEL
Правила соответствия DDI HwStorPortProhibitedDDIs(storport), IrqlKeApcLte1(wdm)

См. также раздел

KGUARDED_MUTEX

KeReleaseGuardedMutex