古斯塔夫•阿申巴赫

  • 本文目录
  • 同专题
暂无目录
JUC 44篇
  1. aqs overview
  2. fork join example
  3. 关于线程的常见方法
  4. 创建线程的方法
  5. 小结
  6. 线程状态
  7. 设计模式
  8. 进程与线程
  9. 不同线程读共享资源
  10. 局部变量线程安全分析
  11. 模式
  12. 活跃度 && reentranlock
  13. park/unpark
  14. synchronized原理
  15. Wait - notify
  16. 可见性 & Volatile
  17. 有序性
  18. 原子类
  19. 总结
  20. Cas & volatile
  21. LongAdder源码
  22. Unsafe对象
  23. 数据库连接池
  24. final原理
  25. JUC 不可变类拾遗
  26. 常用线程池 及其API
  27. 异步模式
  28. forkjoin
  29. JUC 线程池拾遗
  30. ThreadPoolExecutor
  31. tomcat线程池
  32. 线程安全集合类
  33. AQS
  34. concurrnetHashMap原理
  35. CountDownLatch - 倒计时锁
  36. CycliBarrier
  37. JUC J.U.C 原理拾遗
  38. ReentrantLock原理
  39. ReentrantReadWriteLock
  40. SemaPhore - 信号量
  41. StampedLock
  42. 死锁
  43. lightweight lock explained
  44. tomcat threadpool detail

LongAdder源码

发表于 2025-10-22 分类于 JAVA原理 , JUC , 4. 无锁并发

3. LongAdder源码

成员变量 a3eb58b256086097e0163b759f42ec4337682c01
cas的简单实现 dbc3a7edb8ff642f6ad71c1c5a06be2133b719ee
源码剖析

1.

d8aeeea826703b18a05210424fd40946cc295580

Part1 : adder

175e836049ed48470cbec361f70cc95ea7cdbf37

e0358f8f809bb32e814983b7a1cee0179f24d415

Part2

longAccumulate,

Part1没创建cell
or

casCell失败

进入part2的longAccmulate

2467e7ce5ef8f0bf60777c6cda40ed75adda5359

Part3

cells存在, 但cell未创建

6a3eef1400480415f8a4ed0b20e544e8ba070672

# 无锁并发
Cas & volatile
原子类
© 2026 古斯塔夫•阿申巴赫
由 Hexo & NexT.Muse 强力驱动
0%