AtomicInteger底层实现原理是什么?如何在自己的产品代码中应用CAS操作?
AutomicInteger是对int类型的一个封装,提供原子性的访问和更新操作,原子操作的实现是基于cas(compare-and-swap)来实现的。
什么是原子性访问?
一组操作要么全部成功,要么全部失败。
原子类操作都有哪些?
不光有AtomicInteger,还有很多原子类操作的类型。基本分为6类:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200719115630841.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3N4ajE1OTc1Mw==,size_16,color_FFFFFF,t_70)
Atomic*:AtomicInteger、AtomicLong 和 AtomicBoolean
以AtomicInteger为例:
查看相关的方法: