不支持CAS操作的处理器上的compareAndSet

Ill*_*lia 3 java multithreading compare-and-swap

今天我接受了一个采访的下一个问题:"如果你在一台不支持CAS操作的处理器的机器上调用它,那么来自AtomicLong的compareAndSet方法是怎么回事".

如果可能的话,请您帮我解决这个问题并提供一些全面的描述链接?

bow*_*ore 5

来自Java Concurrency in Practice 15.2.3 JVM中的CAS支持:

在支持CAS的平台上,运行时将它们内联到适当的机器指令中; 在最坏的情况下,如果类似CAS的指令不可用,则JVM使用自旋锁.