Функция KeAcquireInStackQueuedSpinLockForDpc (wdm.h)
Подпрограмма KeAcquireInStackQueuedSpinLockForDpc получает очередь блокировки спина в очереди для потокового DPC.
Синтаксис
void KeAcquireInStackQueuedSpinLockForDpc(
PKSPIN_LOCK SpinLock,
PKLOCK_QUEUE_HANDLE LockHandle
);
Параметры
SpinLock
[вход, выход] Указатель на спин-блокировку для получения в виде очереди. Вы должны уже инициализировать спин-блокировку, вызвав KeInitializeSpinLock.
LockHandle
[out] Указатель на структуру KLOCK_QUEUE_HANDLE , которая получает дескриптор очереди блокировки. Передайте это значение в подпрограмму KeReleaseInStackQueuedSpinLockForDpc при освобождении блокировки спина в очереди.
Возвращаемое значение
None
Remarks
Подпрограмма CustomThreadedDpc может использовать KeAcquireInStackQueuedSpinLockForDpc для получения блокировки спина в очереди. Если CustomThreadedDpc выполняется в irQL = PASSIVE_LEVEL, KeAcquireInStackQueuedSpinLockForDpc вызывает текущее значение IRQL до DISPATCH_LEVEL. Если CustomThreadedDpc уже выполняется в IRQL = DISPATCH_LEVEL, KeAcquireInStackQueuedSpinLockForDpc не изменяет текущий IRQL.
Дополнительные сведения о блокировках спина в очереди см. в разделе Очереди спиновых блокировок.
Вызовите метод KeReleaseInStackQueuedSpinLockForDpc , чтобы освободить спин-блокировку, полученную KeAcquireInStackQueuedSpinLockForDpc .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista |
Верхняя часть | wdm.h |
Правила соответствия DDI | HwStorPortProhibitedDIS(storport) |