Freigeben über


KeReleaseSpinLock-Makro (wdm.h)

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

Syntax

VOID
KeReleaseSpinLock (
    _Inout_ PKSPIN_LOCK SpinLock,
    _In_ _IRQL_restores_ KIRQL NewIrql
    );

Parameter

[in] SpinLock

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

[in, out] NewIrql

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

Rückgabewert

Keine

Bemerkungen

Dieser Aufruf ist ein Kehrwert von KeAcquireSpinLock. Der NewIrql-Eingabewert muss der von KeAcquireSpinLock zurückgegebene OldIrql sein.

Weitere Informationen zu Spinlocks finden Sie unter Spinlocks.

Aufrufer dieser Routine werden unter IRQL = DISPATCH_LEVEL ausgeführt. Bei der Rückkehr von KeReleaseSpinLock wird IRQL auf den NewIrql-Wert wiederhergestellt.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows 2000.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek Hal.lib
IRQL DISPATCH_LEVEL (siehe Abschnitt "Hinweise")
DDI-Complianceregeln HwStorPortProhibitedDIs(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(storport), SpinLockSafe(wdm)

Weitere Informationen

KeAcquireSpinLock

KeInitializeSpinLock