LongAdder
文章目录
【注意】最后更新于 September 13, 2018,文中内容可能已过时,请谨慎使用。
LongAdder源码分析
一、LongAdder构造
|
|
二、add
|
|
- 判断Cell数组是否为空
- 是
- CAS更新base,这个一般情况就一个线程操作
- 更新失败,调用复杂longAccumulate
- CAS更新base,这个一般情况就一个线程操作
- 否,当前线程的探测值查找相应的Cell,Cell不存在或者CAS的value失败都调用longAccumulate
- 是
三、sum
|
|
四、reset
|
|