java.util.concurrent包的学习
2025-12-31
AtomicInteger类:
setOpaque方法废弃,请用setRelease方法.
getOpaque方法废弃,请用getAcquire方法.
setRelease和getAcquire配套使用。

- - - - -
AtomicLongFieldUpdater 提供了更高层级的封装,可以修改指定类的中的long字段。其实就是AtomicLong的重装版。
同理AtomicIntegerFieldUpdater也和它类似
2025-01-05
DoubleAdder 是 Java 8 引入的高性能浮点数累加器,基于 Striped64 实现,专为高并发场景下的浮点数累加操作而设计。
- - - - - -
AtomicMarkableReference 与 AtomicStampedReference 对比

- - - - -

2025-01-06
涨知识了。我今天才知道,线程会缓存内存里的变量。
在java中,线程会读取java中的全局变量,并缓存到自己线程中来,至于什么时候再更新到内存中,是不确定的。(一句话总结就是,线程会缓存内存中的变量)。
java中全局定义一个int变量,如果多线程同时高频操作会有以下问题:

如果只是解决不可见性,直接加关键字volatile就能解决。
如果想3个都解决,那就是原子操作类:AtomicInteger,AtomicLong等等。
2025-01-07


- - -

2026-01-09

- - - --
StampedLock 在读多写少的情况下,性能更强大。

2026-01-10

普通同步Map 用ConcurrentHashMap
同步有序Map用 ConcurrentSkipListMap
posted on 2025-12-31 15:02 angelshelter 阅读(4) 评论(0) 收藏 举报
浙公网安备 33010602011771号