- java.lang.Object
-
- java.util.concurrent.atomic.AtomicBoolean
-
- All Implemented Interfaces:
-
Serializable
public class AtomicBoolean extends Object implements Serializable
Aboolean可能原子更新的值。 200新新新新200新新新新200新新新200新200新新200新200新200新200新新200新新200新新200新新200新新200新新200新新200新新200新新200新新200新新200新新200新新200新新新200新新新新作新新新200新新200新新新作旗新 一个AtomicBoolean用于诸如原子更新标记的应用程序,不能用作Boolean的替代品。- 从以下版本开始:
- 1.5
- 另请参见:
- Serialized Form
-
-
构造方法摘要
构造方法 Constructor 描述 AtomicBoolean()创建一个新的AtomicBoolean,初始值为false。AtomicBoolean(boolean initialValue)用给定的初始值创建一个新的AtomicBoolean。
-
方法摘要
所有方法 接口方法 具体的方法 弃用的方法 Modifier and Type 方法 描述 booleancompareAndExchange(boolean expectedValue, boolean newValue)原子将值设置为newValue如果当前值,被称为 证人值 ,== expectedValue如通过指定,记忆效应VarHandle.compareAndExchange(java.lang.Object...)。booleancompareAndExchangeAcquire(boolean expectedValue, boolean newValue)原子将值设置为newValue如果当前值,被称为 证人值 ,== expectedValue如通过指定,记忆效应VarHandle.compareAndExchangeAcquire(java.lang.Object...)。booleancompareAndExchangeRelease(boolean expectedValue, boolean newValue)原子将值设置为newValue如果当前值,被称为 证人值 ,== expectedValue如通过指定,记忆效应VarHandle.compareAndExchangeRelease(java.lang.Object...)。booleancompareAndSet(boolean expectedValue, boolean newValue)booleanget()返回当前值,具有VarHandle.getVolatile(java.lang.Object...)指定的内存效果。booleangetAcquire()返回当前值,具有VarHandle.getAcquire(java.lang.Object...)指定的内存效果。booleangetAndSet(boolean newValue)将值设置为newValue并返回旧值,具有VarHandle.getAndSet(java.lang.Object...)指定的内存效果。booleangetOpaque()返回当前值,具有VarHandle.getOpaque(java.lang.Object...)指定的记忆效应。booleangetPlain()返回当前值,具有读取的内存语义,就好像变量被声明为非volatile。voidlazySet(boolean newValue)将值设置为newValue,具有VarHandle.setRelease(java.lang.Object...)指定的内存效果。voidset(boolean newValue)将值设置为newValue,具有VarHandle.setVolatile(java.lang.Object...)指定的内存效果。voidsetOpaque(boolean newValue)将值设置为newValue,具有VarHandle.setOpaque(java.lang.Object...)指定的内存效果。voidsetPlain(boolean newValue)将值设置为newValue,具有设置的内存语义,如同变量声明为非volatile,非final。voidsetRelease(boolean newValue)将值设置为newValue,具有VarHandle.setRelease(java.lang.Object...)指定的内存效果。StringtoString()返回当前值的String表示形式。booleanweakCompareAndSet(boolean expectedValue, boolean newValue)已过时。该方法具有明显的记忆效应,但方法名称表示易失性记忆效应(参见方法如compareAndExchange(boolean, boolean)和compareAndSet(boolean, boolean))。 为了避免在平常或易失性记忆效应上的混乱,建议使用方法weakCompareAndSetPlain(boolean, boolean)。booleanweakCompareAndSetAcquire(boolean expectedValue, boolean newValue)可能原子将值设置为newValue如果当前值== expectedValue如通过指定,记忆效应VarHandle.weakCompareAndSetAcquire(java.lang.Object...)。booleanweakCompareAndSetPlain(boolean expectedValue, boolean newValue)可能原子将值设置为newValue如果当前值== expectedValue如通过指定,记忆效应VarHandle.weakCompareAndSetPlain(java.lang.Object...)。booleanweakCompareAndSetRelease(boolean expectedValue, boolean newValue)可能原子将值设置为newValue如果当前值== expectedValue如通过指定,记忆效应VarHandle.weakCompareAndSetRelease(java.lang.Object...)。booleanweakCompareAndSetVolatile(boolean expectedValue, boolean newValue)可能原子将值设置为newValue如果当前值== expectedValue如通过指定,记忆效应VarHandle.weakCompareAndSet(java.lang.Object...)。
-
-
-
方法详细信息
-
get
public final boolean get()
返回当前值,具有VarHandle.getVolatile(java.lang.Object...)指定的内存效果。- 结果
- 当前值
-
compareAndSet
public final boolean compareAndSet(boolean expectedValue, boolean newValue)- 参数
-
expectedValue- 期望值 -
newValue- 新值 - 结果
-
true如果成功。 False return表示实际值不等于预期值。
-
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(boolean, boolean)
-
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- 新值 - 结果
- 以前的值
-
getPlain
public final boolean getPlain()
返回当前值,具有读取的内存语义,就好像变量被声明为非volatile。- 结果
- 价值
- 从以下版本开始:
- 9
-
setPlain
public final void setPlain(boolean newValue)
将值设置为newValue,具有设置的内存语义,如同该变量被声明为非volatilefinal。- 参数
-
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)原子将值设置为newValue如果当前值,被称为 证人值 ,== expectedValue如通过指定,记忆效应VarHandle.compareAndExchange(java.lang.Object...)。- 参数
-
expectedValue- 期望值 -
newValue- 新值 - 结果
- 见证价值,如果成功,将与预期价值相同
- 从以下版本开始:
- 9
-
compareAndExchangeAcquire
public final boolean compareAndExchangeAcquire(boolean expectedValue, boolean newValue)原子将值设置为newValue如果当前值,被称为 证人值 ,== expectedValue如通过指定,记忆效应VarHandle.compareAndExchangeAcquire(java.lang.Object...)。- 参数
-
expectedValue- 期望值 -
newValue- 新值 - 结果
- 见证价值,如果成功,将与预期价值相同
- 从以下版本开始:
- 9
-
compareAndExchangeRelease
public final boolean compareAndExchangeRelease(boolean expectedValue, boolean newValue)原子将值设置为newValue如果当前值,被称为 证人值 ,== expectedValue如通过指定,记忆效应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
-
-