Makro KeReleaseSpinLock (wdm.h)
Rutinitas KeReleaseSpinLock melepaskan kunci putar dan memulihkan IRQL asli tempat pemanggil berjalan.
Sintaks
VOID
KeReleaseSpinLock (
_Inout_ PKSPIN_LOCK SpinLock,
_In_ _IRQL_restores_ KIRQL NewIrql
);
Parameter
[in] SpinLock
Arahkan ke kunci putar KSPIN_LOCK tempat pemanggil menyediakan penyimpanan.
[in, out] NewIrql
Menentukan nilai KIRQL yang disimpan dari panggilan sebelumnya ke KeAcquireSpinLock.
Nilai kembali
Tidak ada
Keterangan
Panggilan ini adalah timbal balik ke KeAcquireSpinLock. Nilai input NewIrqlharuslah OldIrql yang dikembalikan oleh KeAcquireSpinLock.
Untuk informasi selengkapnya tentang kunci putaran, lihat Spin Locks.
Penelepon rutin ini berjalan di IRQL = DISPATCH_LEVEL. Saat kembali dari KeReleaseSpinLock, IRQL dipulihkan ke nilai NewIrql .
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia dimulai dengan Windows 2000. |
Target Platform | Universal |
Header | wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h) |
Pustaka | Hal.lib |
IRQL | DISPATCH_LEVEL (lihat bagian Keterangan) |
Aturan kepatuhan DDI | 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) |