Java 中的原子變數


是的,從 Java 8 起,java.util.concurrent.atomic 包含支援對單變數上進行原子操作的類,防止競爭條件或不面臨同步問題。atomic 包中的所有類都具有 get/set 方法。其中,每個 set 方法與在同一個變數上對任何後續 get() 方法呼叫建立 happens-before 關係。

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 年 7 月 30 日

361 次瀏覽

開啟你的職業生涯

完成課程以獲得認證

開始學習
廣告
© . All rights reserved.