面试官:既然你用了原子类,那你知道CAS的工作原理是啥吗?

发布时间:2026/6/1 8:50:37

面试官:既然你用了原子类,那你知道CAS的工作原理是啥吗? 前言在 Java 并发编程中,CAS 是一个极其重要的核心概念。它的全称是 Compare And Swap(比较并交换),是一种无锁(lock-free)的非阻塞算法。简单来说,它就像是并发编程中的“乐观锁”基石,允许多个线程在不使用传统重量级锁(如 synchronized)的情况下,安全地实现原子操作JUC是java.util.concurrent包的简称,JUC有2大核心,CAS和AQS,CAS是java.util.concurrent.atomic包的基础,即AtomicInteger和AtomicLong等是用CAS实现的我在volatile相关文章中分享过volatile只能保证可见性,不能保证原子性。但原子类(AtomicInteger等可以保证原子性),原子类利用volatile+CAS来保证原子性,来看看怎么做到的吧。开5个线程,每个线程将count加1000@NotThreadSafepublicclass

相关新闻