KeReleaseSpinLock 宏 (wdm.h)

KeReleaseSpinLock 例程会释放一个旋转锁,并还原运行调用方的原始 IRQL。

语法

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

参数

[in] SpinLock

指向调用方为其提供存储的KSPIN_LOCK旋转锁的指针。

[in, out] NewIrql

指定从前面调用 KeAcquireSpinLock 中保存的 KIRQL 值。

返回值

备注

此调用是对 KeAcquireSpinLock 的相互调用。 输入 NewIrql 值必须是 KeAcquireSpinLock 返回的 OldIrql

有关旋转锁的详细信息,请参阅旋转锁

此例程的调用方在 IRQL = DISPATCH_LEVEL 运行。 从 KeReleaseSpinLock 返回时,IRQL 将还原到 NewIrql 值。

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 通用
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
Library Hal.lib
IRQL DISPATCH_LEVEL (请参阅备注部分)
DDI 符合性规则 HwStorPortProhibitedDDI (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)

另请参阅

KeAcquireSpinLock

KeInitializeSpinLock