Fonction FltAcquirePushLockExclusiveEx (fltkernel.h)
La routine FltAcquirePushLockExclusiveEx acquiert le verrou Push donné pour un accès exclusif par le thread appelant.
Syntaxe
VOID FLTAPI FltAcquirePushLockExclusiveEx(
[in, out] PEX_PUSH_LOCK PushLock,
ULONG Flags
);
Paramètres
[in, out] PushLock
Pointeur de verrouillage push opaque. Ce pointeur doit avoir été initialisé par un appel précédent à FltInitializePushLock.
Flags
Masque de bits d’indicateurs qui contrôlent les attributs du verrou. Les indicateurs peuvent être la valeur suivante.
Indicateur | Signification |
---|---|
FLT_PUSH_LOCK_DISABLE_AUTO_BOOST | Désactivez l’activation automatique du verrouillage push. |
FLT_PUSH_LOCK_ENABLE_AUTO_BOOST | Déconseillée; n’a aucun effet. Active l’activation de l’activation automatique du verrouillage par push. |
Valeur retournée
Aucun.
Notes
FltAcquirePushLockExclusiveEx acquiert le verrou Push donné pour un accès exclusif par le thread appelant.
Les verrous Push sont similaires aux structures ERESOURCE (également appelées ressources) en ce qu’ils peuvent être acquis pour un accès partagé ou exclusif. Pour plus d’informations sur les verrous push, consultez l’entrée de référence pour FltInitializePushLock.
Contrairement aux structures ERESOURCE, les verrous push ne peuvent pas être acquis de manière récursive. Si l’appelant a déjà acquis le verrou push pour l’accès exclusif ou partagé, le thread se bloque.
Le moment où l’appelant reçoit un accès exclusif au verrou Push donné dépend des éléments suivants :
Si le verrou push n’est actuellement pas propriétaire, l’accès exclusif est accordé immédiatement au thread actuel.
Si le verrou push a déjà été acquis pour un accès exclusif ou partagé par un autre thread, le thread actuel est mis en état d’attente jusqu’à ce que le verrou push puisse être acquis.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | fltkernel.h |
Bibliothèque | FltMgr.lib |