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


Метод IWDFObject::AcquireLock (wudfddi.h)

[ предупреждение: UMDF 2 является последней версией UMDF и заменяет UMDF 1. Все новые драйверы UMDF должны быть написаны с помощью UMDF 2. Новые функции не добавляются в UMDF 1, а поддержка UMDF 1 в более новых версиях Windows 10 ограничена. Универсальные драйверы Windows должны использовать UMDF 2. Дополнительные сведения см. в разделе Начало работы с UMDF.]

Метод AcquireLock запрещает платформе вызывать методы интерфейсов, зарегистрированных драйвером.

Синтаксис

void AcquireLock();

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

Никакой

Замечания

Если драйвер настроился использовать схему блокировки AcquireLock, платформа автоматически получает блокировку presentation перед вызовом драйвера. (Дополнительные сведения об этой схеме блокировки см. в разделе Указание режима синхронизации обратного вызова.) Методы AcquireLock и IWDFObject::ReleaseLock получают и освобождают блокировку презентации соответственно. объекты устройств Framework и объекты очередей платформы ввода-вывода в настоящее время поддерживают метод AcquireLock.

Драйвер вызывает метод AcquireLock для управления своими объектами, созданными из интерфейсов обратного вызова за пределами области обратного вызова в потокобезопасном режиме. Метод AcquireLock представляет расширенную функцию платформы, которую большинство драйверов не будут использовать, так как неправильное использование может привести к взаимоблокировкам.

Несинхронизированный код может вызывать AcquireLock. Драйвер должен вызывать объекты, соответствующие области синхронизации.

Примеры

Пример кода использования метода acquireLock см. в разделе IWDFDevice::SetPnpState.

Требования

Требование Ценность
завершение поддержки Недоступно в UMDF 2.0 и более поздних версиях.
целевая платформа Настольный
минимальная версия UMDF 1.5
заголовка wudfddi.h (include Wudfddi.h)
DLL WUDFx.dll

См. также

IWDFObject

IWDFObject::ReleaseLock