Поделиться через


Макрос KeReleaseSpinLockFromDpcLevel (wdm.h)

Программа KeReleaseSpinLockFromDpcLevel выпускает исполнительный спин-блокировку без изменения IRQL.

Синтаксис

void KeReleaseSpinLockFromDpcLevel(
  [in, out] PKSPIN_LOCK SpinLock
);

Параметры

[in, out] SpinLock

Указатель на исполнительный KSPIN_LOCK блокировку спина, для которой вызывающий объект предоставляет хранилище.

Возвращаемое значение

Никакой

Замечания

Драйверы вызывают KeReleaseSpinLockFromDpcLevel, чтобы освободить блокировку спина, полученную путем вызова KeAcquireSpinLockAtDpcLevel.

Это ошибка вызова KeReleaseSpinLockFromDpcLevel, если указанная блокировка спина была приобретена путем вызова KeAcquireSpinLock, так как исходный IRQL вызывающего объекта не восстанавливается, что может привести к взаимоблокировкам или неустранимым сбоям страниц.

Дополнительные сведения о блокировках спина см. в разделе Spin Locks.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно начиная с Windows 2000.
целевая платформа Всеобщий
заголовка wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL DISPATCH_LEVEL
правил соответствия DDI HwStorPortProhibitedDIs(storport), IrqlDispatch(storport), SpinLockSafe(storport)

См. также

KeAcquireSpinLock

KeAcquireSpinLockAtDpcLevel

KeReleaseSpinLock