Freigeben über


KeReleaseSpinLock-Makro (wdm.h)

Die KeReleaseSpinLock Routine gibt eine Drehsperre frei und stellt die ursprüngliche IRQL wieder her, bei der der Aufrufer ausgeführt wurde.

Syntax

VOID KeReleaseSpinLock(
  PKSPIN_LOCK SpinLock,
  KIRQL       NewIrql
);

Parameter

SpinLock

Zeiger auf eine KSPIN_LOCK Drehsperre, für die der Aufrufer den Speicher bereitstellt.

NewIrql

Gibt den KIRQL-Wert an, der aus dem vorherigen Aufruf von KeAcquireSpinLock gespeichert wurde.

Rückgabewert

Nichts

Bemerkungen

Dieser Aufruf ist ein gegenseitiger KeAcquireSpinLock. Der Wert NewIrql muss die OldIrql- sein, die von KeAcquireSpinLockzurückgegeben wird.

Weitere Informationen zu Drehsperren finden Sie unter Spin Locks.

Aufrufer dieser Routine werden unter IRQL = DISPATCH_LEVEL ausgeführt. Bei Der Rückgabe von KeReleaseSpinLockwird IRQL in den NewIrql--Wert wiederhergestellt.

Anforderungen

Anforderung Wert
Zielplattform- universell
Header- wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek Hal.lib
IRQL- DISPATCH_LEVEL (siehe Abschnitt "Hinweise")
DDI-Complianceregeln HwStorPortProhibitedDDIs(storport), IrqlKeReleaseSpinLock(storport), IrqlKeReleaseSpinLock(storport), IrqlKeReleaseSpinLock(wdm), MarkingQueuedIrps(wdm), ReqSendWhileSpinlock(kmdf), Spinlock(kmdf), Spinlock(kmdf), SpinLock(storport), SpinLock(storport), SpinLock(wdm), SpinlockDpc() kmdf), SpinlockDpc(kmdf), SpinLockDpc(storport), SpinLockDpc(storport), SpinLockDpc(wdm), SpinlockRelease(kmdf), SpinlockRelease(kmdf), SpinLockRelease(storport), SpinLockRelease(storport), SpinlockRelease(wdm), SpinLockSafe(storport), SpinLockSafe(storport), SpinLockSafe(wdm)

Siehe auch