Compartir a través de


Función KeTryToAcquireSpinLockAtDpcLevel (wdm.h)

La rutina KeTryToAcquireSpinLockAtDpcLevel intenta adquirir un bloqueo de giro en DISPATCH_LEVEL.

Sintaxis

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

Parámetros

[in, out] SpinLock

Especifica el bloqueo de número que se va a adquirir. El bloqueo de número ya debe haberse inicializado mediante KeInitializeSpinLock.

Valor devuelto

KeTryToAcquireSpinLockAtDpcLevel devuelve TRUE si se ha adquirido el bloqueo de giro y FALSE si el bloqueo de número ya está en espera y no se puede adquirir.

Observaciones

Si el bloqueo de número especificado no está ocupado, el KeTryToAcquireSpinLockAtDpcLevel rutina adquiere el bloqueo de giro (consulte KeAcquireSpinLock para obtener más información) y devuelve TRUE. Si el bloqueo de número ya se ha adquirido, la rutina devuelve inmediatamente FALSE.

Si se adquiere el bloqueo de número, el autor de la llamada puede liberarlo mediante la rutina de KeReleaseSpinLock.

Si desea que el controlador bloquee cuando no pueda adquirir el bloqueo de giro, use KeAcquireSpinLockAtDpcLevel en su lugar.

Para obtener más información sobre los bloqueos de número, consulte Bloqueos de número.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible en Windows Server 2003 con Service Pack 1 (SP1) y versiones posteriores de Windows.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL DISPATCH_LEVEL
reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport), SpinLock(wdm), spinlockRelease(wdm)

Consulte también

keAcquireSpinLock

KeAcquireSpinLockAtDpcLevel

keInitializeSpinLock

keReleaseSpinLock