Partager via


KeTryToAcquireSpinLockAtDpcLevel, fonction (wdm.h)

La routine KeTryToAcquireSpinLockAtDpcLevel tente d’acquérir un verrou de rotation à DISPATCH_LEVEL.

Syntaxe

BOOLEAN KeTryToAcquireSpinLockAtDpcLevel(
  [in, out] PKSPIN_LOCK SpinLock
);

Paramètres

[in, out] SpinLock

Spécifie le verrou de rotation à acquérir. Le verrou de rotation doit déjà avoir été initialisé par KeInitializeSpinLock.

Valeur de retour

KeTryToAcquireSpinLockAtDpcLevel retourne TRUE si le verrou de rotation a été acquis et FALSE si le verrou de rotation est déjà conservé et ne peut pas être acquis.

Remarques

Si le verrou de rotation spécifié n’est pas occupé, la routine KeTryToAcquireSpinLockAtDpcLevel acquiert le verrou de rotation (voir KeAcquireSpinLock pour plus d’informations) et retourne TRUE. Si le verrou de rotation a déjà été acquis, la routine retourne immédiatement FALSE.

Si le verrou de rotation est acquis, l’appelant peut le libérer à l’aide de la routine KeReleaseSpinLock.

Si vous souhaitez que le pilote bloque lorsqu’il ne parvient pas à acquérir le verrou de rotation, utilisez KeAcquireSpinLockAtDpcLevel à la place.

Pour plus d’informations sur les verrous de rotation, consultez verrouillages de rotation.

Exigences

Exigence Valeur
client minimum pris en charge Disponible dans Windows Server 2003 avec Service Pack 1 (SP1) et versions ultérieures de Windows.
plateforme cible Universel
d’en-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL DISPATCH_LEVEL
règles de conformité DDI HwStorPortProhibitedDDIs(storport), SpinLock(wdm), SpinlockRelease(wdm)

Voir aussi

KeAcquireSpinLock

KeAcquireSpinLockAtDpcLevel

KeInitializeSpinLock

KeReleaseSpinLock