Bagikan melalui


Fungsi InterlockedXor (winnt.h)

Melakukan operasi XOR atomik pada nilai LONG yang ditentukan. Fungsi ini mencegah lebih dari satu utas menggunakan variabel yang sama secara bersamaan.

Sintaks

LONG InterlockedXor(
  [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.

Menampilkan nilai

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 _InterlockedXor kompilator intrinsik 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 InterlockedXorAcquire atau InterlockedXorRelease sebagai gantinya.

Catatan Fungsi ini didukung pada sistem berbasis Windows RT.
 

Persyaratan

   
Target Platform Windows
Header winnt.h (termasuk Windows.h)

Lihat juga

Akses Variabel Yang Saling Diblokir

InterlockedXor16

InterlockedXor16Acquire

InterlockedXor16NoFence

InterlockedXor16Release

InterlockedXor64

InterlockedXor64Acquire

InterlockedXor64NoFence

InterlockedXor64Release

InterlockedXor8

InterlockedXor8Acquire

InterlockedXor8NoFence

InterlockedXor8Release

InterlockedXorAcquire

InterlockedXorNoFence

InterlockedXorRelease

Fungsi Sinkronisasi