1

我有一个用例来更新长变量中事件的纪元时间。这个变量也将有大量的并发读取和写入。以下是详细要求:

  1. 非常快速地完成读取和写入
  2. 读取可能会或可能不会返回最新结果,但不应返回损坏的结果
  3. 写入是对新纪元值的简单赋值,不需要加法、减法或计算

对于我的用例,哪个替代方案是更好的选择:

  1. 带有 volatile 关键字的原始 long
  2. 原子长
  3. 具有 accumulatorFunction 的 LongAccumulator(x,y) -> y
  4. 两个不同的变量 - 一个仅用于读取值,另一个 volatile 变量仅用于写入值,写入变量的值在某个时间间隔内被复制到读取变量
4

1 回答 1

-1

使用AtomicLong它有助于避免显式锁定的额外开销

于 2021-07-12T17:44:25.833 回答