原子包类如AtomicInteger等如何工作

use*_*415 7 java multithreading

我已经读过使用原子包类使我们能够做到线程安全,锁定更少的编码.但我不太确定原子包类中的方法如何在没有使用锁或任何synchronize关键字的情况下提供线程安全性.任何帮助都应该受到赞赏.

jol*_*ier 14

它们使用非常低级别的指令,例如Compare和Swap,以及sun.misc.Unsafe类中的多个其他方法.

基本上,类似的方法调用compareAndSwap()将对应于唯一的处理器指令,这消除了许多多线程问题.