随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)
结构
java.util.concurrent.atomic
类 AtomicBoolean
java.lang.Object
java.util.concurrent.atomic.AtomicBoolean
所有已实现的接口:
public class AtomicBoolean extends Object implements Serializable
描述
可以用原子方式更新的 boolean
值。有关原子变量属性的描述,请参阅 java.util.concurrent.atomic
包规范。AtomicBoolean
可用在应用程序中(如以原子方式更新的标志),但不能用于替换Boolean
。
从以下版本开始:
1.5
另请参见:
构造方法
1、public AtomicBoolean(boolean initialValue) 使用给定的初始值创建新的AtomicBoolean
。
参数:initialValue
- 初始值
2、public AtomicBoolean() 使用初始值false
创建新的 AtomicBoolean
。
方法详细
1、public final boolean get() 返回当前值。
返回:当前值
2、public final boolean compareAndSet(boolean expect, boolean update) 如果当前值==
预期值,则以原子方式将该值设置为给定的更新值。
参数:expect
- 预期值 update
- 新值
返回:如果成功,则返回 true。返回 False 指示实际值与预期值不相等。
3、public boolean weakCompareAndSet(boolean expect,boolean update)
如果当前值 ==
预期值,则以原子方式将该值设置为给定的更新值。
可能意外失败并且不提供排序保证,因此几乎只是 compareAndSet
的适当替代方法。
参数:expect
- 预期值 update
- 新值
返回:如果成功,则返回 true。
4、public final void set(boolean newValue) 无条件地设置为给定值。
参数:newValue
- 新值
5、public final void lazySet(boolean newValue) 最终设置为给定值。
参数:newValue
- 新值
从以下版本开始:1.6
6、public final boolean getAndSet(boolean newValue) 以原子方式设置为给定值,并返回以前的值。
参数:newValue
- 新值
返回:以前的值
7、public StringtoString() 返回当前值的字符串表示形式。
返回:当前值的字符串表示形式。