Bagikan melalui


Fungsi DrvSynchronize (winddi.h)

Fungsi DrvSynchronize memberi tahu driver bahwa GDI perlu mengakses permukaan yang dikelola perangkat. Fungsi ini memungkinkan operasi menggambar asinkron yang dilakukan oleh koprosesor perangkat untuk dikoordinasikan dengan akses GDI.

Sintaks

void DrvSynchronize(
  DHPDEV dhpdev,
  RECTL  *prcl
);

Parameter

dhpdev

Tangani ke struktur PDEV perangkat fisik yang mengidentifikasi perangkat yang akan disinkronkan dengan GDI. Parameter ini adalah handel perangkat yang dikembalikan ke GDI oleh DrvEnablePDEV.

prcl

Penunjuk ke struktur RECTL . Parameter ini harus diabaikan oleh driver.

Mengembalikan nilai

Tidak ada

Keterangan

Fungsi ini memungkinkan operasi menggambar asinkron yang dilakukan oleh koprosesor perangkat untuk dikoordinasikan dengan akses GDI.

DrvSynchronize dapat diimplementasikan secara opsional dalam driver tampilan. GDI memanggil fungsi ini hanya jika dikaitkan dengan EngAssociateSurface. GDI memanggil DrvSynchronize tepat sebelum menggambar langsung ke permukaan perangkat. GDI akan memanggil DrvSynchronizeSurface alih-alih DrvSynchronize dalam driver yang mengimplementasikan kedua fungsi ini.

Fungsi ini harus kembali hanya ketika aman bagi GDI untuk mengakses permukaan yang dikelola perangkat apa pun. Artinya, DrvSynchronize harus menunda kembali dari panggilan sampai semua operasi menggambar asinkron telah diselesaikan oleh coprocessor perangkat, sehingga menunjukkan bahwa GDI aman untuk mengakses permukaan yang dikelola perangkat apa pun.

DrvSynchronize dimaksudkan untuk mendukung perangkat yang menggunakan coprocessor untuk menggambar. Perangkat semacam itu dapat memperlakukan beberapa operasi gambar sebagai asinkron, kembali ke GDI dari operasi sebelum gambar selesai. Jika demikian, ada kemungkinan bahwa operasi gambar berikutnya akan ditangani oleh GDI. Agar GDI dapat mengakses permukaan yang dikelola perangkat dengan aman, GDI harus memiliki sarana untuk memastikan bahwa setiap penyajian asinkron yang dilakukan oleh koprosesor perangkat selesai. Dengan memanggil fungsi ini, GDI menyinkronkan akses ke permukaan yang dikelola perangkat dengan driver.

GDI tidak akan pernah memanggil DrvSynchronize untuk permukaan yang dikelola perangkat. DrvSynchronize bukanlah fungsi output.

Persyaratan

Persyaratan Nilai
Target Platform Desktop
Header winddi.h (termasuk Winddi.h)

Lihat juga

DrvEnablePDEV

DrvSynchronizeSurface

EngAssociateSurface