public class AtomicBoolean extends Objectimplements Serializable
boolean value that may be updated atomically. See the
java.util.concurrent.atomic package specification for description of the properties of atomic variables. An
AtomicBoolean is used in applications such as atomically updated flags, and cannot be used as a replacement for a
Boolean.
| Constructor and Description |
|---|
AtomicBoolean()
Creates a new
AtomicBoolean with initial value
false.
|
AtomicBoolean(boolean initialValue)
Creates a new
AtomicBoolean with the given initial value.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
compareAndSet(boolean expect, boolean update)
Atomically sets the value to the given updated value if the current value
== the expected value.
|
boolean |
get()
Returns the current value.
|
boolean |
getAndSet(boolean newValue)
Atomically sets to the given value and returns the previous value.
|
void |
lazySet(boolean newValue)
Eventually sets to the given value.
|
void |
set(boolean newValue)
Unconditionally sets to the given value.
|
String |
toString()
Returns the String representation of the current value.
|
boolean |
weakCompareAndSet(boolean expect, boolean update)
Atomically sets the value to the given updated value if the current value
== the expected value.
|
public AtomicBoolean(boolean initialValue)
AtomicBoolean with the given initial value.
initialValue - the initial value
public AtomicBoolean()
AtomicBoolean with initial value
false.
public final boolean get()
public final boolean compareAndSet(boolean expect,
boolean update)
== the expected value.
expect - the expected value
update - the new value
true if successful. False return indicates that the actual value was not equal to the expected value.
public boolean weakCompareAndSet(boolean expect,
boolean update)
== the expected value.
May fail spuriously and does not provide ordering guarantees, so is only rarely an appropriate alternative to compareAndSet.
expect - the expected value
update - the new value
true if successful
public final void set(boolean newValue)
newValue - the new value
public final void lazySet(boolean newValue)
newValue - the new value
public final boolean getAndSet(boolean newValue)
newValue - the new value