Java 中的原子变量


是的,从 Java 8 开始,java.util.concurrent.atomic 包中包含支持对单个变量执行原子操作的类,防止出现竞争条件或避免同步问题。atomic 包中的所有类都有 get/set 方法。每个 set 方法都与同一变量上任何后续的 get() 方法调用有先行发生关系。

import java.util.concurrent.atomic.AtomicInteger;

class AtomicCounter {
   private AtomicInteger counter = new AtomicInteger(0);
   
   public void increment() {
      counter.incrementAndGet();
   }
   public void decrement() {
      counter.decrementAndGet();
   }
   public int value() {
      return counter.get();
   }
}

更新日期:2019-07-30

361 次浏览

开启你的职业生涯

完成课程获取认证

开始
广告