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


Структура ENGSAFESEMAPHORE (winddi.h)

Структура ENGSAFESEMAPHORE предоставляет драйверу потокобезопасный семафор.

Синтаксис

typedef struct _ENGSAFESEMAPHORE {
  HSEMAPHORE hsem;
  LONG       lCount;
} ENGSAFESEMAPHORE;

Члены

hsem

Дескриптор семафора.

lCount

Указывает количество ссылок на семафор.

Комментарии

Безопасный семафор — это оболочка, содержащая дескриптор семафора и счетчик ссылок на этот семафор.

Драйвер выделяет структуру ENGSAFESEMAPHORE и передает ее в EngInitializeSafeSemaphore для инициализации. GDI управляет безопасным семафором под блокировкой и поддерживает количество ссылок на него, что делает его пригодным для многопоточности.

После инициализации безопасного семафора драйвер может вызвать EngAcquireSemaphore и EngReleaseSemaphore с помощью параметра для синхронизации.

Требования

Требование Значение
Заголовок winddi.h (включая Winddi.h)

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

EngAcquireSemaphore

EngDeleteSafeSemaphore

EngInitializeSafeSemaphore

EngReleaseSemaphore