Partager via


Fonction KeAcquireGuardedMutex (wdm.h)

La routine KeAcquireGuardedMutex acquiert un mutex protégé.

Syntaxe

void KeAcquireGuardedMutex(
  PKGUARDED_MUTEX Mutex
);

Paramètres

Mutex

[in, out] Pointeur vers la structure KGUARDED_MUTEX pour le mutex protégé. Cette structure doit avoir été initialisée avec KeInitializeGuardedMutex.

Valeur de retour

None

Remarques

Utilisez KeReleaseGuardedMutex pour libérer un mutex acquis avec KeAcquireGuardedMutex.

Si le mutex est disponible, KeAcquireGuardedMutex retourne immédiatement. Sinon, le thread appelant est placé dans un état d’attente jusqu’à ce que le mutex soit disponible. Pour éviter d’entrer un état d’attente lorsque le mutex n’est pas disponible, utilisez KeTryToAcquireGuardedMutex.

Un thread qui appelle KeAcquireGuardedMutex entre implicitement dans une région protégée, où tous les API sont désactivés. Ils restent désactivés jusqu’à ce que le thread libère le mutex avec KeReleaseGuardedMutex.

Un mutex protégé ne peut pas être acquis de manière récursive : si un thread tient déjà le mutex lorsqu’il appelle KeAcquireGuardedMutex, le thread se bloquera.

Pour plus d’informations sur les mutex surveillés, consultez Mutexes rapides et Mutexes gardés.

Configuration requise

Condition requise Valeur
Serveur minimal pris en charge Windows Server 2003
En-tête wdm.h
IRQL <= APC_LEVEL
Règles de conformité DDI HwStorPortProhibitedDDIs(storport),IrqlKeApcLte1(wdm)

Voir aussi

KGUARDED_MUTEX

KeReleaseGuardedMutex