Fungsi InterlockedExchangeAdd (miniport.h)
Rutinitas InterlockedExchangeAdd menambahkan nilai ke bilangan bulat tertentu sebagai operasi atomik dan mengembalikan nilai asli bilangan bulat yang diberikan.
Sintaks
LONG InterlockedExchangeAdd(
[in, out] LONG volatile *Addend,
[in] LONG Value
);
Parameter
[in, out] Addend
Penunjuk ke variabel bilangan bulat.
[in] Value
Menentukan nilai yang akan ditambahkan ke Tambahkan.
Nilai kembali
InterlockedExchangeAdd mengembalikan nilai asli variabel Addend saat panggilan terjadi.
Keterangan
InterlockedExchangeAdd harus digunakan alih-alih ExInterlockedAddUlong karena lebih cepat dan lebih efisien.
InterlockedExchangeAdd diimplementasikan sebaris oleh kompilator jika sesuai dan memungkinkan. Ini tidak memerlukan kunci putaran dan oleh karena itu dapat digunakan dengan aman pada data yang dapat di-pageable.
InterlockedExchangeAdd hanya bersifat atomik sehubungan dengan panggilan Xxx lain yang diblokir.
Operasi yang saling dikunci tidak dapat digunakan pada memori yang tidak di-cache.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia dimulai dengan Windows 2000. |
Target Platform | Universal |
Header | miniport.h (termasuk Wdm.h, Ntddk.h, Ntifs.h, Miniport.h) |
Pustaka | OneCoreUAP.lib di Windows 10 |
IRQL | Tingkat apa pun |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk