刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!
JDK提供了一些原子操作的类,在java.util.concurrent.atomic下面。如AtomicBoolean,AtomicInteger,AtomicLong都是用原子的方式来更新指定类型的值。
Unsafe类包含了大量多的对C代码的操作,包括了很多直接内存分配和原子操作的调用,都存在安全隐患,所以标记为unsafe。
AtomicInteger、AtomicLong等是一个标准的乐观锁实现,sun.minc.Unsafe是JDK提供的乐观锁的支持。
CAS 的线程安全机制很好很高效,但是这适合一些粒度比较小的需求才有效,如果遇到非常复杂的业务逻辑还是需要加锁操作的。
Java 在 jdk1.8版本 引入了 LongAdder 类,与 AtomicLong 一样可以实现加、减、递增、递减等线程安全操作。
AtomicLong 的性能比 LongAdder 的性能好。LongAdder 的性能比 AtomicLong 的性能好。本文链接:说一下 Atomic 的原理 ?
版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!
