在引用JavaDocs for LongAdder时,它扩展了Number类。

然后,在查看源代码时,它是从Striped64扩展的

我很困惑,为什么我们不能在javadocs中指定LongAdder是从Striped64类扩展的呢?是因为Striped64扩展了数字吗?
发布于 2019-07-09 05:01:46
他们可能在 LongAdder中扩展 Number 类,有谁知道呢?
来自Oracle Docs:


可以得出结论: LongAdder 通过扩展 Striped64来使用 AtomicLong 。
Q :为什么Striped64由LongAdder ?扩展
答:
Striped64保存单元格的哈希表(每个单元格都是AtomicLong的变体)。当使用多个线程向LongAdder(扩展Striped64)添加值时,线程将它们的值添加到哈希表中的不同单元格中。这将导致并发线程处理,并增加吞吐量。
可能是Striped64是一个内部实现,他们希望它被抽象出来。
https://stackoverflow.com/questions/56945073
复制相似问题