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 永遠不會針對裝置管理的介面呼叫 DrvSynchronize 。 DrvSynchronize 本身不是輸出函式。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | winddi.h (包括 Winddi.h) |