ExAcquireFastMutexUnsafe, fonction (wdm.h)
La routine ExAcquireFastMutexUnsafe acquiert le mutex rapide spécifié pour le thread appelant.
Syntaxe
void ExAcquireFastMutexUnsafe(
PFAST_MUTEX FastMutex
);
Paramètres
FastMutex
[in, out] Pointeur vers une structure FAST_MUTEX) pour laquelle l’appelant fournit le stockage. L’appelant a précédemment initialisé cette structure par un appel à la routine ExInitializeFastMutex
Valeur de retour
Aucun
Remarques
ExAcquireFastMutexUnsafe place l’appelant dans un état d’attente si le mutex rapide spécifié ne peut pas être acquis immédiatement. Sinon, l’appelant reçoit la propriété du mutex et l’accès exclusif à la ressource que le mutex protège jusqu’à ce que l’appelant libère le mutex.
Tout mutex rapide acquis par un appel à ExAcquireFastMutexUnsafe doit être libéré par un appel à la routine ExReleaseFastMutexUnsafe.
Les routines ExAcquireFastMutex et ExAcquireFastMutexUnsafe provoquent le blocage du thread appelant jusqu’à ce que le mutex soit disponible. La routine ExTryToAcquireFastMutex retourne immédiatement avec la valeur de retour FALSE si un autre thread a déjà acquis le mutex. À la fois ExAcquireFastMutex et ExTryToAcquireFastMutex déclencher l’IRQL à APC_LEVEL avant d’acquérir le mutex rapide. Les pilotes doivent utiliser ExAcquireFastMutexUnsafe, qui ne déclenche pas le runtime d’intégration, uniquement si l’une des valeurs suivantes est vraie :
Le thread est déjà en cours d’exécution à APC_LEVEL.
Le thread acquiert le mutex dans une région critique précédemment entrée par un appel à la routine KeEnterCriticalRegion ou FsRtlEnterFileSystem routine.
Pour plus d’informations sur les mutex rapides, consultez les rubriques suivantes :
mutex rapides et les de mutex guarded
verrous, interblocages et de synchronisation
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 2000 |
d’en-tête | wdm.h |
IRQL | APC_LEVEL |
règles de conformité DDI | HwStorPortProhibitedDDIs(storport) |