4.CAS
Java · 2 篇笔记
- 6.4 4.CAShistorical
1. 是什么 要理解CAS,我们首先得了解乐观锁和悲观锁的概念。 1.1. 乐观锁与悲观锁 悲观锁:假设每次操作数据的时候总有人一起操作数据。因此我操作数据前先上锁,直到我操作完释放锁,别人都只能阻塞等待。 乐观锁:假设每次操作数据的时候没人跟我一起操作数据。因此我只在更新的时候检查一下有没有其他人
- 6.43 Atomichistorical
1. 是什么 线程安全的原子类,底层使用CAS实现 2. 使用 以AtomicInteger为例 3. 原理分析 3.1. 构造方法 可以看到主要有三个属性: Unsafe unsafe 、 long valueOffset 和 volatile int value - 关于Unsafe类的解释参考