モジュール java.base

クラスAtomicBoolean

java.lang.Object
java.util.concurrent.atomic.AtomicBoolean
すべての実装されたインタフェース:
Serializable

public class AtomicBoolean extends Object implements Serializable
原子的な更新が可能なboolean値です。 アトミック・アクセスのプロパティについては、VarHandle仕様を参照してください。 AtomicBooleanは、原子的に更新されるフラグなどのアプリケーションで使用されます。これをBooleanの代替として使用することはできません。
導入されたバージョン:
1.5
関連項目:
  • コンストラクタの詳細

    • AtomicBoolean

      public AtomicBoolean(boolean initialValue)
      指定された初期値を使って、新しいAtomicBooleanを作成します。
      パラメータ:
      initialValue - 初期値
    • AtomicBoolean

      public AtomicBoolean()
      初期値falseを使って、新しいAtomicBooleanを作成します。
  • メソッドの詳細

    • get

      public final boolean get()
      VarHandle.getVolatile(java.lang.Object...)で指定されたメモリー効果を持つ現在の値を返します。
      戻り値:
      現行値
    • compareAndSet

      public final boolean compareAndSet(boolean expectedValue, boolean newValue)
      現在の値== expectedValuenewValueに値を原子的に設定します。VarHandle.compareAndSet(java.lang.Object...)で指定されたメモリー効果があります。
      パラメータ:
      expectedValue - 期待値
      newValue - 新しい値
      戻り値:
      成功する場合はtrue falseは、実際の値が予想される値と等価ではないことを示す。
    • weakCompareAndSet

      @Deprecated(since="9") public boolean weakCompareAndSet(boolean expectedValue, boolean newValue)
      非推奨。
      このメソッドは単純なメモリー効果を持ちますが、メソッド名は揮発性メモリー効果(compareAndExchange(boolean, boolean)compareAndSet(boolean, boolean)などのメソッドを参照してください)を意味します。 プレーンまたは揮発性メモリー効果の混乱を避けるために、代わりにweakCompareAndSetPlain(boolean, boolean)メソッドを使用することをお勧めします。
      おそらくnewValueに値を原子的に設定します。現在の値== expectedValueの場合は、VarHandle.weakCompareAndSetPlain(java.lang.Object...)で指定されたメモリー効果が適用されます。
      パラメータ:
      expectedValue - 期待値
      newValue - 新しい値
      戻り値:
      成功した場合はtrue
      関連項目:
    • weakCompareAndSetPlain

      public boolean weakCompareAndSetPlain(boolean expectedValue, boolean newValue)
      おそらくnewValueに値を原子的に設定します。現在の値== expectedValueの場合は、VarHandle.weakCompareAndSetPlain(java.lang.Object...)で指定されたメモリー効果が適用されます。
      パラメータ:
      expectedValue - 期待値
      newValue - 新しい値
      戻り値:
      成功した場合はtrue
      導入されたバージョン:
      9
    • set

      public final void set(boolean newValue)
      値をnewValueに設定し、VarHandle.setVolatile(java.lang.Object...)で指定されたメモリー効果を設定します。
      パラメータ:
      newValue - 新しい値
    • lazySet

      public final void lazySet(boolean newValue)
      値をnewValueに設定し、VarHandle.setRelease(java.lang.Object...)で指定されたメモリー効果を設定します。
      パラメータ:
      newValue - 新しい値
      導入されたバージョン:
      1.6
    • getAndSet

      public final boolean getAndSet(boolean newValue)
      この値を原子的にnewValueに設定し、VarHandle.getAndSet(java.lang.Object...)で指定されたメモリー効果で古い値を返します。
      パラメータ:
      newValue - 新しい値
      戻り値:
      前の値
    • toString

      public String toString()
      現在値の文字列表記を返します。
      オーバーライド:
      toString 、クラス:  Object
      戻り値:
      現在値の文字列表現。
    • getPlain

      public final boolean getPlain()
      変数が非volatileと宣言されているかのように、読み込みのメモリー・セマンティクスを持つ現在の値を返します。
      戻り値:
      導入されたバージョン:
      9
    • setPlain

      public final void setPlain(boolean newValue)
      値がnewValueに設定され、変数が非volatileおよび非finalとして宣言されているかのように設定されたメモリー・セマンティクスが使用されます。
      パラメータ:
      newValue - 新しい値
      導入されたバージョン:
      9
    • getOpaque

      public final boolean getOpaque()
      VarHandle.getOpaque(java.lang.Object...)で指定されたメモリー効果を持つ現在の値を返します。
      戻り値:
      導入されたバージョン:
      9
    • setOpaque

      public final void setOpaque(boolean newValue)
      値をnewValueに設定し、VarHandle.setOpaque(java.lang.Object...)で指定されたメモリー効果を設定します。
      パラメータ:
      newValue - 新しい値
      導入されたバージョン:
      9
    • getAcquire

      public final boolean getAcquire()
      VarHandle.getAcquire(java.lang.Object...)で指定されたメモリー効果を持つ現在の値を返します。
      戻り値:
      導入されたバージョン:
      9
    • setRelease

      public final void setRelease(boolean newValue)
      値をnewValueに設定し、VarHandle.setRelease(java.lang.Object...)で指定されたメモリー効果を設定します。
      パラメータ:
      newValue - 新しい値
      導入されたバージョン:
      9
    • compareAndExchange

      public final boolean compareAndExchange(boolean expectedValue, boolean newValue)
      「証人の価値」== expectedValueと呼ばれる現在の値がnewValueに原子的に設定され、VarHandle.compareAndExchange(java.lang.Object...)で指定されたメモリー効果が適用されます。
      パラメータ:
      expectedValue - 期待値
      newValue - 新しい値
      戻り値:
      目撃者の価値は、成功した場合の期待値と同じです
      導入されたバージョン:
      9
    • compareAndExchangeAcquire

      public final boolean compareAndExchangeAcquire(boolean expectedValue, boolean newValue)
      「証人の価値」== expectedValueと呼ばれる現在の値がnewValueに原子的に設定され、VarHandle.compareAndExchangeAcquire(java.lang.Object...)で指定されたメモリー効果が適用されます。
      パラメータ:
      expectedValue - 期待値
      newValue - 新しい値
      戻り値:
      目撃者の価値は、成功した場合の期待値と同じです
      導入されたバージョン:
      9
    • compareAndExchangeRelease

      public final boolean compareAndExchangeRelease(boolean expectedValue, boolean newValue)
      「証人の価値」== expectedValueと呼ばれる現在の値がnewValueに原子的に設定され、VarHandle.compareAndExchangeRelease(java.lang.Object...)で指定されたメモリー効果が適用されます。
      パラメータ:
      expectedValue - 期待値
      newValue - 新しい値
      戻り値:
      目撃者の価値は、成功した場合の期待値と同じです
      導入されたバージョン:
      9
    • weakCompareAndSetVolatile

      public final boolean weakCompareAndSetVolatile(boolean expectedValue, boolean newValue)
      おそらくnewValueに値を原子的に設定します。現在の値== expectedValueの場合は、VarHandle.weakCompareAndSet(java.lang.Object...)で指定されたメモリー効果が適用されます。
      パラメータ:
      expectedValue - 期待値
      newValue - 新しい値
      戻り値:
      成功した場合はtrue
      導入されたバージョン:
      9
    • weakCompareAndSetAcquire

      public final boolean weakCompareAndSetAcquire(boolean expectedValue, boolean newValue)
      おそらくnewValueに値を原子的に設定します。現在の値== expectedValueの場合は、VarHandle.weakCompareAndSetAcquire(java.lang.Object...)で指定されたメモリー効果が適用されます。
      パラメータ:
      expectedValue - 期待値
      newValue - 新しい値
      戻り値:
      成功した場合はtrue
      導入されたバージョン:
      9
    • weakCompareAndSetRelease

      public final boolean weakCompareAndSetRelease(boolean expectedValue, boolean newValue)
      おそらくnewValueに値を原子的に設定します。現在の値== expectedValueの場合は、VarHandle.weakCompareAndSetRelease(java.lang.Object...)で指定されたメモリー効果が適用されます。
      パラメータ:
      expectedValue - 期待値
      newValue - 新しい値
      戻り値:
      成功した場合はtrue
      導入されたバージョン:
      9