다음을 통해 공유


EngInitializeSafeSemaphore 함수(winddi.h)

EngInitializeSafeSemaphore 함수는 지정된 안전 세마포를 초기화합니다.

구문

ENGAPI BOOL EngInitializeSafeSemaphore(
  [out] ENGSAFESEMAPHORE *pssem
);

매개 변수

[out] pssem

초기화할 드라이버 할당 ENGSAFESEMAPHORE 구조체에 대한 포인터입니다.

반환 값

EngInitializeSafeSemaphore는 성공하면 TRUE 를 반환합니다. 그렇지 않으면 FALSE를 반환합니다.

설명

EngInitializeSafeSemaphoreEngDeleteSafeSemaphore 는 스레드로부터 안전하며 잠금에서 작동하고 세마포에 대한 참조 수를 유지 관리합니다. 이렇게 하면 동시 호출 수에 관계없이 하나의 세마포만 생성되고 세마포는 마지막 참조가 해제될 때까지 존재합니다.

안전 세마포가 초기화되면 드라이버는 동기화를 위해 ENGSAFESEMAPHORE 구조의 hsem 멤버를 사용하여 EngAcquireSemaphoreEngReleaseSemaphore를 호출할 수 있습니다.

EngInitializeSafeSemaphore의 호출자는 더 이상 세마포가 필요하지 않을 때 EngDeleteSafeSemaphore를 호출해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 winddi.h(Winddi.h 포함)
라이브러리 Win32k.lib
DLL Win32k.sys

추가 정보

ENGSAFESEMAPHORE

EngAcquireSemaphore

EngDeleteSafeSemaphore

EngIsSemaphoreOwned

EngIsSemaphoreOwnedByCurrentThread

EngReleaseSemaphore