Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Standard Ed. 5.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## java.util.concurrent.atomic
Class AtomicBoolean

    java.lang.Object
      java.util.concurrent.atomic.AtomicBoolean

All Implemented Interfaces:
  Serializable

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

Since:
  1.5
See Also:
  Serialized Form

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

Method Summary
`boolean` | `compareAndSet(boolean expect, boolean update)` Atomically set the value to the given updated value if the current value `==` the expected value.
`boolean` | `get()` Returns the current value.
`boolean` | `getAndSet(boolean newValue)` Sets to the given value and returns the previous 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 set the value to the given updated value if the current value `==` the expected value.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### AtomicBoolean

    public AtomicBoolean(boolean initialValue)

  Creates a new `AtomicBoolean` with the given initial value.

  Parameters:
    `initialValue` - the initial value

### AtomicBoolean

    public AtomicBoolean()

  Creates a new `AtomicBoolean` with initial value `false`.

Method Detail

### get

    public final boolean get()

  Returns the current value.

  Returns:
    the current value

### compareAndSet

    public final boolean compareAndSet(boolean expect,
                                       boolean update)

  Atomically set 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.

### weakCompareAndSet

    public boolean weakCompareAndSet(boolean expect,
                                     boolean update)

  Atomically set the value to the given updated value if the current value `==` the expected value. May fail spuriously.

  Parameters:
    `expect` - the expected value
    `update` - the new value
  Returns:
    true if successful.

### set

    public final void set(boolean newValue)

  Unconditionally sets to the given value.

  Parameters:
    `newValue` - the new value

### getAndSet

    public final boolean getAndSet(boolean newValue)

  Sets to the given value and returns the previous value.

  Parameters:
    `newValue` - the new value
  Returns:
    the previous value

### toString

    public String toString()

  Returns the String representation of the current value.

  Overrides:
    `toString` in class `Object`
  Returns:
    the String representation of the current value.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Standard Ed. 5.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.