标签: java multithreading
我已经读过使用原子包类使我们能够做到线程安全,锁定更少的编码。 但我不太确定原子包类中的方法如何在没有使用锁或任何synchronize关键字的情况下提供线程安全性。任何帮助都应该受到赞赏。
答案 0 :(得分:13)
他们使用非常低级别的说明,例如Compare and Swap,以及sun.misc.Unsafe类中的其他多种方法。
基本上,像compareAndSwap()这样的方法调用将对应于唯一的处理器指令,这会消除许多多线程问题。
compareAndSwap()