Section courante

A propos

Section administrative du site

atomic_compare_exchange

Échange de comparaison atomique
OpenCL

Syntaxe

bool atomic_compare_exchange_strong(volatile __global A *object, __global C *expected, C desired)
bool atomic_compare_exchange_strong(volatile __global A *object, __local C *expected, C desired)
bool atomic_compare_exchange_strong(volatile __global A *object, __private C *expected, C desired)
bool atomic_compare_exchange_strong(volatile __local A *object, __global C *expected, C desired)
bool atomic_compare_exchange_strong(volatile __local A *object, __local C *expected, C desired)
bool atomic_compare_exchange_strong(volatile __local A *object, __private C *expected, C desired)
bool atomic_compare_exchange_strong(volatile A *object, C *expected, C desired)
bool atomic_compare_exchange_strong_explicit(volatile __global A *object, __global C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_strong_explicit(volatile __global A *object, __local C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_strong_explicit(volatile __global A *object, __private C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_strong_explicit(volatile __local A *object, __global C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_strong_explicit(volatile __local A *object, __local C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_strong_explicit(volatile __local A *object, __private C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_strong_explicit(volatile A *object, C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_strong_explicit(volatile __global A *object, __global C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_strong_explicit(volatile __global A *object, __local C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_strong_explicit(volatile __global A *object, __private C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_strong_explicit(volatile __local A *object, __global C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_strong_explicit(volatile __local A *object, __local C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_strong_explicit(volatile __local A *object, __private C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_strong_explicit(volatile A *object, C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_weak(volatile __global A *object, __global C *expected, C desired)
bool atomic_compare_exchange_weak(volatile __global A *object, __local C *expected, C desired)
bool atomic_compare_exchange_weak(volatile __global A *object, __private C *expected, C desired)
bool atomic_compare_exchange_weak(volatile __local A *object, __global C *expected, C desired)
bool atomic_compare_exchange_weak(volatile __local A *object, __local C *expected, C desired)
bool atomic_compare_exchange_weak(volatile __local A *object, __private C *expected, C desired)
bool atomic_compare_exchange_weak(volatile A *object, C *expected, C desired)
bool atomic_compare_exchange_weak_explicit(volatile __global A *object, __global C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_weak_explicit(volatile __global A *object, __local C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_weak_explicit(volatile __global A *object, __private C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_weak_explicit(volatile __local A *object, __global C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_weak_explicit(volatile __local A *object, __local C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_weak_explicit(volatile __local A *object, __private C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_weak_explicit(volatile A *object, C *expected, C desired, memory_order success, memory_order failure)
bool atomic_compare_exchange_weak_explicit(volatile __global A *object, __global C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_weak_explicit(volatile __global A *object, __local C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_weak_explicit(volatile __global A *object, __private C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_weak_explicit(volatile __local A *object, __global C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_weak_explicit(volatile __local A *object, __local C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_weak_explicit(volatile __local A *object, __private C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)
bool atomic_compare_exchange_weak_explicit(volatile A *object, C *expected, C desired, memory_order success, memory_order failure, memory_scope scope)

Description

Cette fonction permet d'effectuer une comparaison atomique entre une valeur mémoire et une valeur attendue, puis de la remplacer si elles sont égales.



Dernière mise à jour : Mardi, le 8 Juillet 2025