Bagikan melalui


Fungsi InterlockedDecrement16 (winnt.h)

Penurunan (berkurang satu) nilai variabel 16-bit yang ditentukan sebagai operasi atomik.

Untuk beroperasi pada nilai 32-bit, gunakan fungsi InterlockedDecrement .

Untuk beroperasi pada nilai 64-bit, gunakan fungsi InterlockedDecrement64 .

Sintaks

SHORT InterlockedDecrement16(
  [in, out] SHORT volatile *Addend
);

Parameter

[in, out] Addend

Penunjuk ke variabel yang akan direkrementasi.

Nilai kembali

Fungsi mengembalikan nilai yang direkrementasi yang dihasilkan.

Keterangan

Variabel yang diarahkan oleh parameter Addend harus diratakan pada batas 16-bit; jika tidak, fungsi ini akan bertingkah tidak terduga pada sistem x86 multiprosedur dan sistem non-x86 apa pun. Lihat _aligned_malloc.

Fungsi yang saling diblokir 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.

Fungsi ini diimplementasikan menggunakan kompilator intrinsik jika memungkinkan. Untuk informasi selengkapnya, lihat file header WinBase.h dan _InterlockedDecrement16.

Fungsi ini menghasilkan hambatan memori penuh (atau pagar) untuk memastikan bahwa operasi memori selesai secara berurutan.

Catatan Fungsi ini didukung pada sistem berbasis Windows RT.
 

Persyaratan

   
Klien minimum yang didukung Windows 8 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2012 [hanya aplikasi desktop]
Target Platform Windows
Header winnt.h (sertakan Windows.h)

Lihat juga

Akses Variabel Yang Saling Diblokir

InterlockedDecrement

InterlockedDecrement16Acquire

InterlockedDecrement16NoFence

InterlockedDecrement16Release

InterlockedDecrement64

InterlockedDecrementAcquire

InterlockedDecrementAcquire64

InterlockedDecrementNoFence

InterlockedDecrementNoFence64

InterlockedDecrementRelease

InterlockedDecrementRelease64

Fungsi Sinkronisasi