DrvSynchronize 함수(winddi.h)
DrvSynchronize 함수는 GDI가 디바이스 관리 표면에 액세스해야 한다고 드라이버에 알립니다. 이 함수를 사용하면 디바이스의 공동 프로세서에서 수행하는 비동기 그리기 작업을 GDI 액세스와 조정할 수 있습니다.
구문
void DrvSynchronize(
DHPDEV dhpdev,
RECTL *prcl
);
매개 변수
dhpdev
GDI와 동기화할 디바이스를 식별하는 물리적 디바이스의 PDEV 구조에 대한 핸들입니다. 이 매개 변수는 DrvEnablePDEV에서 GDI로 반환되는 디바이스 핸들입니다.
prcl
RECTL 구조체에 대한 포인터입니다. 이 매개 변수는 드라이버에서 무시해야 합니다.
반환 값
없음
설명
이 함수를 사용하면 디바이스의 공동 프로세서에서 수행하는 비동기 그리기 작업을 GDI 액세스와 조정할 수 있습니다.
DrvSynchronize 는 디스플레이 드라이버에서 선택적으로 구현할 수 있습니다. GDI는 EngAssociateSurface에 의해 후크된 경우에만 이 함수를 호출합니다. GDI는 디바이스 표면에 직접 그리기 직전에 DrvSynchronize 를 호출합니다. GDI는 이러한 두 함수를 모두 구현하는 드라이버에서 DrvSynchronize 대신 DrvSynchronizeSurface를 호출합니다.
이 함수는 GDI가 디바이스 관리 표면에 액세스하는 것이 안전한 경우에만 를 반환해야 합니다. 즉, DrvSynchronize 는 디바이스의 공동 프로세서에서 모든 비동기 그리기 작업이 완료될 때까지 호출에서 반환을 지연해야 하므로 GDI가 디바이스 관리 표면에 액세스하는 것이 안전하다는 것을 나타냅니다.
DrvSynchronize 는 그리기에 공동 프로세서를 사용하는 디바이스를 지원하기 위한 것입니다. 이러한 디바이스는 일부 그리기 작업을 비동기식으로 처리하여 드로잉이 완료되기 전에 작업에서 GDI로 돌아갈 수 있습니다. 이 경우 GDI에서 후속 그리기 작업을 처리할 수 있습니다. GDI가 디바이스 관리 표면에 안전하게 액세스하려면 디바이스의 공동 프로세서에서 수행하는 모든 비동기 렌더링 이 완료되도록 하는 수단이 있어야 합니다. GDI는 이 함수를 호출하여 디바이스 관리 화면에 대한 액세스를 드라이버와 동기화합니다.
GDI는 디바이스 관리 표면에 대해 DrvSynchronize 를 호출하지 않습니다. DrvSynchronize 자체는 출력 함수가 아닙니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | winddi.h(Winddi.h 포함) |