モジュール java.base

クラス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を作成します。
    • メソッドの詳細

      • compareAndSet

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