KeAcquireInStackQueuedSpinLockForDpc 函数 (wdm.h)

KeAcquireInStackQueuedSpinLockForDpc 例程获取线程 DPC 的排队旋转锁。

语法

void KeAcquireInStackQueuedSpinLockForDpc(
  PKSPIN_LOCK         SpinLock,
  PKLOCK_QUEUE_HANDLE LockHandle
);

参数

SpinLock

[in, out]指向要作为排队旋转锁获取的旋转锁的指针。 必须已通过调用 KeInitializeSpinLock 初始化了旋转锁。

LockHandle

[out]指向接收锁队列句柄 的KLOCK_QUEUE_HANDLE 结构的指针。 释放排队的旋转锁时,将此值传递给 KeReleaseInStackQueuedSpinLockForDpc 例程。

返回值

备注

CustomThreadedDpc 例程可以使用 KeAcquireInStackQueuedSpinLockForDpc 获取排队的旋转锁。 如果 CustomThreadedDpc 在 IRQL = PASSIVE_LEVEL 处执行, KeAcquireInStackQueuedSpinLockForDpc 会将当前 IRQL 提升为DISPATCH_LEVEL。 如果 CustomThreadedDpc 已在 IRQL = DISPATCH_LEVEL 执行, KeAcquireInStackQueuedSpinLockForDpc 不会更改当前 IRQL。

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

调用 KeReleaseInStackQueuedSpinLockForDpc 以释放 KeAcquireInStackQueuedSpinLockForDpc 获取的旋转锁。

要求

要求
最低受支持的客户端 Windows Vista
标头 wdm.h
DDI 符合性规则 HwStorPortProhibitedDDI (storport)

另请参阅

CustomThreadedDpc

KLOCK_QUEUE_HANDLE

KeInitializeSpinLock

KeReleaseInStackQueuedSpinLockForDpc