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.
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) |