Fungsi InterlockedOr (winnt.h)
Melakukan operasi Atom ATAU pada nilai LONG yang ditentukan. Fungsi ini mencegah lebih dari satu utas menggunakan variabel yang sama secara bersamaan.
Sintaks
LONG InterlockedOr(
[in, out] LONG volatile *Destination,
[in] LONG Value
);
Parameter
[in, out] Destination
Penunjuk ke operand pertama. Nilai ini akan diganti dengan hasil operasi.
[in] Value
Operan kedua.
Nilai kembali
Fungsi mengembalikan nilai asli parameter Tujuan .
Keterangan
Fungsi yang saling terhubung menyediakan mekanisme sederhana untuk menyinkronkan akses ke variabel yang dibagikan oleh beberapa utas. Fungsi ini bersifat atomik sehubungan dengan panggilan ke fungsi lain yang saling diblokir.
Untuk sistem berbasis Intel Itanium dan arsitektur x64, fungsi ini diimplementasikan menggunakan kompilator intrinsik. Untuk arsitektur x86, gunakan pengkompilasi _InterlockedOr secara langsung.
Fungsi ini menghasilkan hambatan memori penuh (atau pagar) untuk memastikan bahwa operasi memori selesai secara berurutan.
Sistem berbasis Itanium: Untuk aplikasi penting performa, gunakan InterlockedOrAcquire atau InterlockedOrRelease sebagai gantinya.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Windows |
Header | winnt.h (termasuk Windows.h) |