1、什么是原子类
原子类可以认为其操作都是不可分割
2、为什么要有原子类
对多线程访问同一个变量,我们需要加锁,而锁是比较消耗性能的,JDk1.5之后,新增的原子操作类提供了一种用法简单、性能高效、线程安全地更新一个变量的方式,这些类同样位于JUC包下的atomic包下,
发展到JDk1.8,该包下共有17个类,囊括了原子更新基本类型、原子更新数组、原子更新属性、原子更新引用,其中,jdk1.8新增的原子类有DoubleAccumulator、DoubleAdder、LongAccumulator、LongAdder、Striped64
1)大致可以归为3类
AtomicBoolean、AtomicInteger、AtomicLong 元老级的原子更新,方法几乎一模一样
DoubleAdder、LongAdder 对Double、Long的原子更新性能进行优化提升
DoubleAccumulator、LongAccumulator 支持自定义运算
2)示例
本文发布于:2024-02-02 07:16:18,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170682937742219.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |