繁体   English   中英

java中long值的原子赋值

[英]Atomic assignment of long value in java

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

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

哪种替代方案更适合我的用例:

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM