Bagikan melalui


Fungsi VideoPortInterlockedExchange (video.h)

Fungsi VideoPortInterlockedExchange mengunci atau membuka blok memori dengan mengatur variabel kunci yang ditentukan pengguna ke TRUE atau FALSE. Ini mengembalikan nilai yang ditahan sebelumnya dari variabel kunci.

Sintaks

VIDEOPORT_API LONG VideoPortInterlockedExchange(
  [in, out] IN OUT PLONG Target,
  [in]      IN LONG      Value
);

Parameter

[in, out] Target

Penunjuk ke variabel kunci yang ditentukan pengguna yang digunakan untuk mengontrol akses ke buffer memori.

[in] Value

Menentukan nilai yang akan disimpan di Target, yang menunjukkan apakah buffer memori akan dikunci atau tidak terkunci. Gunakan TRUE untuk mengunci buffer memori, dan FALSE untuk membuka kunci buffer memori.

Nilai kembali

VideoPortInterlockedExchange mengembalikan nilai yang dimiliki Target sebelum panggilan fungsi.

Keterangan

VideoPortInterlockedExchange dapat digunakan untuk mencegah ketidakcocokan buffer umum DMA dalam sistem multi-prosesor.

Ketika buffer tidak dibaca dari atau ditulis ke, variabel kunci harus memiliki nilai FALSE. Panggilan berikutnya ke VideoPortInterlockedExchange dengan parameter Targetnya diatur ke TRUE mengatur ulang variabel kunci ke TRUE, setelah itu fungsi ini mengembalikan FALSE. Buffer sekarang dikunci, mencegah akses oleh utas lain. Ketika operasi saat ini pada buffer selesai, buka kunci buffer dengan panggilan ke VideoPortInterlockedExchange dengan parameter Target-nya diatur ke FALSE.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Windows 2000 dan versi yang lebih baru dari sistem operasi Windows.
Target Platform Desktop
Header video.h (sertakan Video.h)
Pustaka Videoprt.lib
DLL Videoprt.sys
IRQL Tingkat apa pun

Lihat juga

VideoPortGetCommonBuffer

VideoPortInterlockedDecrement

VideoPortInterlockedIncrement