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


Функция ExAcquireRundownProtection (wdm.h)

Подпрограмма ExAcquireRundownProtection пытается получить защиту от запуска в общем объекте, чтобы вызывающий объект смог безопасно получить доступ к объекту.

Синтаксис

BOOLEAN ExAcquireRundownProtection(
  [in, out] PEX_RUNDOWN_REF RunRef
);

Параметры

[in, out] RunRef

Указатель на структуру EX_RUNDOWN_REF, которая была инициализирована предыдущим вызовом подпрограммы ExInitializeRundownProtection. Подпрограммы защиты запуска используют эту структуру для отслеживания состояния запуска связанного общего объекта. Эта структура непрозрачна для драйверов.

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

ExAcquireRundownProtection возвращает TRUE, если подпрограмма успешно получает защиту от запуска для вызывающего абонента. В противном случае возвращается FALSE. Возвращаемое значение FALSE указывает, что запущен запуск объекта и что объект должен рассматриваться как недопустимый.

Замечания

Чтобы безопасно получить доступ к общему объекту, драйвер вызывает ExAcquireRundownProtection получить защиту от запуска объекта. Подпрограмма возвращает TRUE, чтобы указать, что защита от запуска действует. Если защита от запуска действует, драйвер может безопасно получить доступ к объекту без риска удаления объекта до завершения доступа.

Если сам блок запуска не поддерживается, эта функция может вызываться в DISPATCH_LEVEL.

После завершения доступа драйвер вызывает ExReleaseRundownProtection, чтобы освободить ранее полученную защиту от запуска.

Если ExAcquireRundownProtection возвращает FALSE, объект больше недоступен. Например, если объект должен быть заменен новым, вызывающий объект должен ждать, пока владелец объекта создаст новый объект, а затем согласовывает доступ к новому объекту.

Дополнительные сведения см. в разделе Run-Down Protection.

Требования

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

См. также

EX_RUNDOWN_REF

ExInitializeRundownProtection

ExReleaseRundownProtection