原子包类如AtomicInteger等如何工作

时间:2012-09-06 16:41:57

标签: java multithreading

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

1 个答案:

答案 0 :(得分:13)

他们使用非常低级别的说明,例如Compare and Swap,以及sun.misc.Unsafe类中的其他多种方法。

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