- java.lang.Object
-
- java.util.concurrent.atomic.AtomicBoolean
-
- すべての実装されたインタフェース:
Serializable
public class AtomicBoolean extends Object implements Serializable
原子的な更新が可能なboolean値です。 アトミック・アクセスのプロパティの詳細は、VarHandleの仕様を参照してください。AtomicBooleanは、原子的に更新されるフラグなどのアプリケーションで使用されます。これをBooleanの代替として使用することはできません。- 導入されたバージョン:
- 1.5
- 関連項目:
- 直列化された形式
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 AtomicBoolean()初期値falseを使って、新しいAtomicBooleanを作成します。AtomicBoolean(boolean initialValue)指定された初期値を使って、新しいAtomicBooleanを作成します。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 非推奨のメソッド 修飾子と型 メソッド 説明 booleancompareAndExchange(boolean expectedValue, boolean newValue)witness value (== expectedValue)と呼ばれる現在の値が、VarHandle.compareAndExchange(java.lang.Object...)で指定されたメモリー効果を持つ場合は、この値をnewValueに原子的に設定します。booleancompareAndExchangeAcquire(boolean expectedValue, boolean newValue)witness value (== expectedValue)と呼ばれる現在の値が、VarHandle.compareAndExchangeAcquire(java.lang.Object...)で指定されたメモリー効果を持つ場合は、この値をnewValueに原子的に設定します。booleancompareAndExchangeRelease(boolean expectedValue, boolean newValue)witness value (== expectedValue)と呼ばれる現在の値が、VarHandle.compareAndExchangeRelease(java.lang.Object...)で指定されたメモリー効果を持つ場合は、この値をnewValueに原子的に設定します。booleancompareAndSet(boolean expectedValue, boolean newValue)現在の値が== expectedValueの場合、VarHandle.compareAndSet(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに原子的に設定します。booleanget()VarHandle.getVolatile(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値を返します。booleangetAcquire()VarHandle.getAcquire(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値を返します。booleangetAndSet(boolean newValue)VarHandle.getAndSet(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueにアトミックに設定し、古い値を返します。booleangetOpaque()VarHandle.getOpaque(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値を返します。booleangetPlain()変数が非volatileとして宣言されたかのように、読取りのメモリー・セマンティクスを使用して、現在の値を返します。voidlazySet(boolean newValue)VarHandle.setRelease(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに設定します。voidset(boolean newValue)VarHandle.setVolatile(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに設定します。voidsetOpaque(boolean newValue)VarHandle.setOpaque(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに設定します。voidsetPlain(boolean newValue)変数が非volatileおよび非finalとして宣言されたかのように設定するメモリー・セマンティクスを使用して、値をnewValueに設定します。voidsetRelease(boolean newValue)VarHandle.setRelease(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに設定します。StringtoString()現在値の文字列表記を返します。booleanweakCompareAndSet(boolean expectedValue, boolean newValue)非推奨。このメソッドにはプレーン・メモリー効果がありますが、メソッド名は揮発性メモリー効果を意味します(compareAndExchange(boolean, boolean)やcompareAndSet(boolean, boolean)などのメソッドを参照)。booleanweakCompareAndSetAcquire(boolean expectedValue, boolean newValue)VarHandle.weakCompareAndSetAcquire(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値== expectedValueの場合、値を原子的にnewValueに設定します。booleanweakCompareAndSetPlain(boolean expectedValue, boolean newValue)VarHandle.weakCompareAndSetPlain(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値== expectedValueの場合、値を原子的にnewValueに設定します。booleanweakCompareAndSetRelease(boolean expectedValue, boolean newValue)VarHandle.weakCompareAndSetRelease(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値== expectedValueの場合、値を原子的にnewValueに設定します。booleanweakCompareAndSetVolatile(boolean expectedValue, boolean newValue)VarHandle.weakCompareAndSet(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値== expectedValueの場合、値を原子的にnewValueに設定します。
-
-
-
メソッドの詳細
-
get
public final boolean get()
VarHandle.getVolatile(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値を返します。- 戻り値:
- 現行値
-
compareAndSet
public final boolean compareAndSet(boolean expectedValue, boolean newValue)現在の値が== expectedValueの場合、VarHandle.compareAndSet(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに原子的に設定します。- パラメータ:
expectedValue- 必要な値newValue- 新しい値- 戻り値:
- 成功する場合は
true。 falseは、実際の値が予想される値と等価ではないことを示す。
-
weakCompareAndSet
@Deprecated(since="9") public boolean weakCompareAndSet(boolean expectedValue, boolean newValue)
非推奨。このメソッドにはプレーン・メモリー効果がありますが、メソッド名は揮発性メモリー効果を意味します(compareAndExchange(boolean, boolean)やcompareAndSet(boolean, boolean)などのメソッドを参照)。 プレーン・メモリーまたは揮発性メモリーの影響による混乱を避けるため、かわりにメソッドweakCompareAndSetPlain(boolean, boolean)を使用することをお薦めします。VarHandle.weakCompareAndSetPlain(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値== expectedValueの場合、値を原子的にnewValueに設定します。- パラメータ:
expectedValue- 必要な値newValue- 新しい値- 戻り値:
- 成功した場合は
true - 関連項目:
weakCompareAndSetPlain(boolean, boolean)
-
weakCompareAndSetPlain
public boolean weakCompareAndSetPlain(boolean expectedValue, boolean newValue)VarHandle.weakCompareAndSetPlain(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値== expectedValueの場合、値を原子的にnewValueに設定します。- パラメータ:
expectedValue- 必要な値newValue- 新しい値- 戻り値:
- 成功した場合は
true - 導入されたバージョン:
- 9
-
set
public final void set(boolean newValue)
VarHandle.setVolatile(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに設定します。- パラメータ:
newValue- 新しい値
-
lazySet
public final void lazySet(boolean newValue)
VarHandle.setRelease(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに設定します。- パラメータ:
newValue- 新しい値- 導入されたバージョン:
- 1.6
-
getAndSet
public final boolean getAndSet(boolean newValue)
VarHandle.getAndSet(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueにアトミックに設定し、古い値を返します。- パラメータ:
newValue- 新しい値- 戻り値:
- 前の値
-
getPlain
public final boolean getPlain()
変数が非volatileとして宣言されたかのように、読取りのメモリー・セマンティクスを使用して、現在の値を返します。- 戻り値:
- 値
- 導入されたバージョン:
- 9
-
setPlain
public final void setPlain(boolean newValue)
変数が非volatileおよび非finalとして宣言されたかのように設定するメモリー・セマンティクスを使用して、値をnewValueに設定します。- パラメータ:
newValue- 新しい値- 導入されたバージョン:
- 9
-
getOpaque
public final boolean getOpaque()
VarHandle.getOpaque(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値を返します。- 戻り値:
- 値
- 導入されたバージョン:
- 9
-
setOpaque
public final void setOpaque(boolean newValue)
VarHandle.setOpaque(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに設定します。- パラメータ:
newValue- 新しい値- 導入されたバージョン:
- 9
-
getAcquire
public final boolean getAcquire()
VarHandle.getAcquire(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値を返します。- 戻り値:
- 値
- 導入されたバージョン:
- 9
-
setRelease
public final void setRelease(boolean newValue)
VarHandle.setRelease(java.lang.Object...)で指定されたメモリー効果を使用して、値をnewValueに設定します。- パラメータ:
newValue- 新しい値- 導入されたバージョン:
- 9
-
compareAndExchange
public final boolean compareAndExchange(boolean expectedValue, boolean newValue)witness value (== expectedValue)と呼ばれる現在の値が、VarHandle.compareAndExchange(java.lang.Object...)で指定されたメモリー効果を持つ場合は、この値をnewValueに原子的に設定します。- パラメータ:
expectedValue- 必要な値newValue- 新しい値- 戻り値:
- 成功した場合の期待値と同じ証人値
- 導入されたバージョン:
- 9
-
compareAndExchangeAcquire
public final boolean compareAndExchangeAcquire(boolean expectedValue, boolean newValue)witness value (== expectedValue)と呼ばれる現在の値が、VarHandle.compareAndExchangeAcquire(java.lang.Object...)で指定されたメモリー効果を持つ場合は、この値をnewValueに原子的に設定します。- パラメータ:
expectedValue- 必要な値newValue- 新しい値- 戻り値:
- 成功した場合の期待値と同じ証人値
- 導入されたバージョン:
- 9
-
compareAndExchangeRelease
public final boolean compareAndExchangeRelease(boolean expectedValue, boolean newValue)witness value (== expectedValue)と呼ばれる現在の値が、VarHandle.compareAndExchangeRelease(java.lang.Object...)で指定されたメモリー効果を持つ場合は、この値をnewValueに原子的に設定します。- パラメータ:
expectedValue- 必要な値newValue- 新しい値- 戻り値:
- 成功した場合の期待値と同じ証人値
- 導入されたバージョン:
- 9
-
weakCompareAndSetVolatile
public final boolean weakCompareAndSetVolatile(boolean expectedValue, boolean newValue)VarHandle.weakCompareAndSet(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値== expectedValueの場合、値を原子的にnewValueに設定します。- パラメータ:
expectedValue- 必要な値newValue- 新しい値- 戻り値:
- 成功した場合は
true - 導入されたバージョン:
- 9
-
weakCompareAndSetAcquire
public final boolean weakCompareAndSetAcquire(boolean expectedValue, boolean newValue)VarHandle.weakCompareAndSetAcquire(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値== expectedValueの場合、値を原子的にnewValueに設定します。- パラメータ:
expectedValue- 必要な値newValue- 新しい値- 戻り値:
- 成功した場合は
true - 導入されたバージョン:
- 9
-
weakCompareAndSetRelease
public final boolean weakCompareAndSetRelease(boolean expectedValue, boolean newValue)VarHandle.weakCompareAndSetRelease(java.lang.Object...)で指定されたメモリー効果を使用して、現在の値== expectedValueの場合、値を原子的にnewValueに設定します。- パラメータ:
expectedValue- 必要な値newValue- 新しい値- 戻り値:
- 成功した場合は
true - 導入されたバージョン:
- 9
-
-