共用方式為


DrvSynchronize 函式 (winddi.h)

DrvSynchronize 函式會通知驅動程式 GDI 需要存取裝置管理的介面。 此函式可讓裝置的協同處理器執行的異步繪圖作業與 GDI 存取進行協調。

語法

void DrvSynchronize(
  DHPDEV dhpdev,
  RECTL  *prcl
);

參數

dhpdev

處理實體裝置的 PDEV 結構,識別要與 GDI 同步處理的裝置。 此參數是 DrvEnablePDEV傳回至 GDI 的裝置句柄。

prcl

RECTL 結構的指標。 驅動程式應該忽略此參數。

傳回值

備註

此函式可讓裝置的協同處理器執行的異步繪圖作業與 GDI 存取進行協調。

DrvSynchronize 可以在顯示驅動程式中選擇性地實作。 只有在 EngAssociateSurface 攔截此函式時,GDI 才會呼叫此函式。 GDI 會在直接繪製到裝置介面之前呼叫 DrvSynchronize 。 GDI 會在實作這兩個函式的驅動程式中呼叫 DrvSynchronizeSurface ,而不是 DrvSynchronize

只有當 GDI 安全存取任何裝置管理的介面時,此函式才應該傳回。 也就是說, DrvSynchronize 應該延遲從呼叫傳回,直到裝置的共同處理器完成所有異步繪圖作業為止,因此表示 GDI 可以安全地存取任何裝置管理的介面。

DrvSynchronize 旨在支援使用共同處理器繪製的裝置。 這類裝置可以將某些繪圖作業視為異步,在繪圖完成之前從作業返回 GDI。 如果是這種情況,GDI 可能會處理後續的繪圖作業。 為了讓 GDI 安全地存取裝置管理的介面,它必須有一種方法,以確保裝置的協同處理器已完成任何 異步轉 譯。 藉由呼叫此函式,GDI 會同步處理裝置管理的介面與驅動程式的存取。

GDI 永遠不會針對裝置管理的介面呼叫 DrvSynchronizeDrvSynchronize 本身不是輸出函式。

規格需求

需求
目標平台 桌面
標頭 winddi.h (包括 Winddi.h)

另請參閱

DrvEnablePDEV

DrvSynchronizeSurface

EngAssociateSurface