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


Функция EngCreateSemaphore (winddi.h)

Функция EngCreateSemaphore создает объект семафора.

Синтаксис

ENGAPI HSEMAPHORE EngCreateSemaphore();

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

Если функция выполняется успешно, возвращаемое значение является дескриптором для объекта семафора. В случае сбоя функции возвращается пустой указатель.

Комментарии

Графические драйверы могут создавать и использовать объект семафора для синхронизации ресурсов. Пример:

  • Драйвер дисплея Permedia использует семафор, когда асинхронному указателю требуется доступ к регистрам CRTC, так как эти регистры совместно используются как асинхронными аппаратными указателями, так и синхронными действиями устройства.
  • Несколько драйверов принтеров, совместно использующие глобальные данные, такие как данные шрифтов на сервере печати, должны синхронизировать доступ к этим данным.
Примечание Пакет драйверов Microsoft Windows (WDK) не содержит примеры драйверов для отображения 3Dlabs Permedia2 (3dlabs.htm ) и 3Dlabs Permedia3 (Perm3.htm). Эти примеры драйверов можно получить из пакета средств разработки драйверов (DDK) для Windows Server 2003 с пакетом обновления 1 (SP1), который можно скачать на странице комплекта средств разработки драйверов для Windows на веб-сайте WDHC.
 

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows 2000 и более поздних версиях операционных систем Windows.
Целевая платформа Универсальное
Верхняя часть winddi.h (включая Winddi.h)
Библиотека Win32k.lib
DLL Win32k.sys

См. также раздел

EngAcquireSemaphore

EngDeleteSemaphore

EngIsSemaphoreOwned

EngIsSemaphoreOwnedByCurrentThread

EngReleaseSemaphore