AtomicBoolean

public class AtomicBoolean extends Object
implements Serializable

A 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.

Public Constructor Summary

AtomicBoolean(boolean initialValue)
Creates a new AtomicBoolean with the given initial value.
AtomicBoolean()
Creates a new AtomicBoolean with initial value false.

Public Method Summary

final boolean
compareAndSet(boolean expect, boolean update)
Atomically sets the value to the given updated value if the current value == the expected value.
final boolean
get()
Returns the current value.
final boolean
getAndSet(boolean newValue)
Atomically sets to the given value and returns the previous value.
final void
lazySet(boolean newValue)
Eventually sets to the given value.
final 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.

Inherited Method Summary

Public Constructors

public AtomicBoolean (boolean initialValue)

Creates a new AtomicBoolean with the given initial value.

Parameters
initialValue the initial value

public AtomicBoolean ()

Creates a new AtomicBoolean with initial value false.

Public Methods

public final boolean compareAndSet (boolean expect, boolean update)

Atomically sets the value to the given updated value if the current value == the expected value.

Parameters
expect the expected value
update the new value
Returns
  • true if successful. False return indicates that the actual value was not equal to the expected value.

public final boolean get ()

Returns the current value.

Returns
  • the current value

public final boolean getAndSet (boolean newValue)

Atomically sets to the given value and returns the previous value.

Parameters
newValue the new value
Returns
  • the previous value

public final void lazySet (boolean newValue)

Eventually sets to the given value.

Parameters
newValue the new value

public final void set (boolean newValue)

Unconditionally sets to the given value.

Parameters
newValue the new value

public String toString ()

Returns the String representation of the current value.

Returns
  • the String representation of the current value

public boolean weakCompareAndSet (boolean expect, boolean update)

Atomically sets the value to the given updated value if the current value == the expected value.

May fail spuriously and does not provide ordering guarantees, so is only rarely an appropriate alternative to compareAndSet.

Parameters
expect the expected value
update the new value
Returns
  • true if successful