0
0

More than 1 year has passed since last update.

【JavaGold】atomicパッケージのクラス

Last updated at Posted at 2023-07-19

主なクラス

java.util.concurrent.atomicパッケージには主に以下のクラスが含まれている。

  • AtomicBooleanboolean型の値の操作を提供するクラス
  • AtomicIntegerint型の操作を提供するクラス
  • AtomicLonglong型の操作を提供するクラス
  • AtomicReference:オブジェクト参照の操作を提供するクラス

これらのクラスは、複数のスレッドが同時にアクセスする可能性があるデータを扱う際に使用される。それぞれのクラスは、値の読み書きの原子性1を保証するためのメソッドや操作を提供し、スレッドセーフな状態でのデータの更新を可能にする。

各クラスの主な共通メソッド

  • get():値を取得する。
  • set():値を設定する。
  • compareAndSet():現在の値と指定した期待値を比較し、一致した場合に新しい値に置き換える。
  • getAndSet():現在の値を取得し、新しい値に置き換える。

各クラスの主なメソッド

AtomicBooleanAtomicReferenceクラス

  • getAndAccumulate():指定された関数を適用した結果を取得し、同時に新しい値に置き換える。

AtomicIntegerAtomicLongクラス

  • incrementAndGet():値を1増やし、新しい値を取得する。
  • decrementAndGet():値を1減らし、新しい値を取得する。
  • addAndGet():指定した値を加算する。
  • getAndAdd():指定した値を減算する。
  • getAndIncrement():値を取得し、同時にインクリメントを行う。
  • getAndDecrement():値を取得し、同時にデクリメントを行う。
  1. 分離できない(してはいけない)性質のこと。一連の処理が完全に終わるか、全く実行されないかのどちらかになるよう結果が保証されていなければならない性質を表す。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0