Comparar e intercambiar

[2]​ Más formalmente podemos definir el algoritmo de la siguiente forma:[2]​ En resumen, cuando varios hilos de ejecución intentan actualizar la misma variable simultáneamente usando CAS, uno gana y actualiza el valor de la variable y el resto pierde.

[2]​ Supongamos que V es una localización de memoria donde está almacenado el valor 10.

Supongamos los siguientes pasos:[2]​ La técnica CAS está soportada por las CPU's modernas.

El acceso a estas rutinas de CPU ponen a disposición del sistema una implementación eficiente al más bajo nivel del algoritmo.

Por ejemplo Java desde versión 5 tiene acceso a estas funciones vía clases del paquete java.util.concurrent.atomic.