Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
KeTryToAcquireSpinLockAtDpcLevel пытается получить блокировку спина на DISPATCH_LEVEL.
Синтаксис
BOOLEAN KeTryToAcquireSpinLockAtDpcLevel(
[in, out] PKSPIN_LOCK SpinLock
);
Параметры
[in, out] SpinLock
Указывает блокировку спина для получения. Блокировка спина должна быть уже инициализирована KeInitializeSpinLock.
Возвращаемое значение
KeTryToAcquireSpinLockAtDpcLevel возвращает TRUE, если блокировка спина приобретена, и FALSE, если блокировка спина уже удерживается и не может быть приобретена.
Замечания
Если указанная блокировка спина не занята, программа KeTryToAcquireSpinLockAtDpcLevel получает блокировку спина (см. KeAcquireSpinLock) и возвращает TRUE. Если блокировка спина уже приобретена, подпрограмма немедленно возвращает FALSE.
Если блокировка спина приобретена, вызывающий объект может освободить его с помощью процедуры KeReleaseSpinLock.
Если вы хотите, чтобы драйвер блокировался, если он не может получить блокировку спина, используйте KeAcquireSpinLockAtDpcLevel.
Дополнительные сведения о блокировках спина см. в разделе Spin Locks.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows Server 2003 с пакетом обновления 1 (SP1) и более поздними версиями Windows. |
целевая платформа | Всеобщий |
заголовка | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |
правил соответствия DDI | HwStorPortProhibitedDIs(storport), SpinLock(wdm), SpinlockRelease(wdm) |