Java并发包中原子操作类原理

Posted 梦想成为DALAO

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java并发包中原子操作类原理相关的知识,希望对你有一定的参考价值。

 JUC包提供了一系列的原子性操作类,这些类都是使用非阻塞算法CAS实现的,相比使用锁实现原子性操作在性能上有很大提高。

4.1原子变量操作类

AtomicInteger

AtomicLong

AtomicBoolean

内部是通过Unsafe类来实现的。

以AtomicLong为例子

递增和递减方法

这个是先获得值,然后修改值

boolean compareAndSet(long expect, long update)方法

底层也是调用unsafe类的CAS方法

4.2JDK8新增的原子操作类LongAdder

4.2.1LongAdder简单介绍

 

转换成:

 

哈哈哈,反正是说能降低竞争,我觉得吧,是有那么点用,但是吧,觉得也没什么实际作用啊!

我也是没怎么看懂.

 

以上是关于Java并发包中原子操作类原理的主要内容,如果未能解决你的问题,请参考以下文章

Java 并发编程 进阶 -- ThreadLocalRandom类原理剖析原子操作类原理剖析(AtomicLong)并发List原理剖析(CopyOnWriteArrayList)

Java Review - 并发编程_原子操作类原理剖析

Java原子类实现原理分析

java并发包中Atomic类的原子命名

死磕 java并发包之AtomicInteger源码分析

并发包中automic类的原理