Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## edu.emory.mathcs.backport.java.util.concurrent.atomic
Class AtomicIntegerArray

    java.lang.Object
      edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicIntegerArray

All Implemented Interfaces:
  java.io.Serializable

public class AtomicIntegerArray
extends java.lang.Object
implements java.io.Serializable

An `int` array in which elements may be updated atomically. See the `edu.emory.mathcs.backport.java.util.concurrent.atomic` package specification for description of the properties of atomic variables.

Since:
  1.5
Author:
  Doug Lea
See Also:
  Serialized Form

Constructor Summary
`AtomicIntegerArray(int length)` Creates a new AtomicIntegerArray of given length.
`AtomicIntegerArray(int[] array)` Creates a new AtomicIntegerArray with the same length as, and all elements copied from, the given array.

Method Summary
`int` | `addAndGet(int i, int delta)` Atomically adds the given value to the element at index `i`.
`boolean` | `compareAndSet(int i, int expect, int update)` Atomically sets the element at position `i` to the given updated value if the current value `==` the expected value.
`int` | `decrementAndGet(int i)` Atomically decrements by one the element at index `i`.
`int` | `get(int i)` Gets the current value at position `i`.
`int` | `getAndAdd(int i, int delta)` Atomically adds the given value to the element at index `i`.
`int` | `getAndDecrement(int i)` Atomically decrements by one the element at index `i`.
`int` | `getAndIncrement(int i)` Atomically increments by one the element at index `i`.
`int` | `getAndSet(int i, int newValue)` Atomically sets the element at position `i` to the given value and returns the old value.
`int` | `incrementAndGet(int i)` Atomically increments by one the element at index `i`.
`void` | `lazySet(int i, int newValue)` Eventually sets the element at position `i` to the given value.
`int` | `length()` Returns the length of the array.
`void` | `set(int i, int newValue)` Sets the element at position `i` to the given value.
`java.lang.String` | `toString()` Returns the String representation of the current values of array.
`boolean` | `weakCompareAndSet(int i, int expect, int update)` Atomically sets the element at position `i` 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

### AtomicIntegerArray

    public AtomicIntegerArray(int length)

  Creates a new AtomicIntegerArray of given length.

Parameters:
  `length` - the length of the array

### AtomicIntegerArray

    public AtomicIntegerArray(int[] array)

  Creates a new AtomicIntegerArray with the same length as, and all elements copied from, the given array.

Parameters:
  `array` - the array to copy elements from
Throws:
  `java.lang.NullPointerException` - if array is null

Method Detail

### length

    public final int length()

  Returns the length of the array.

  Returns:
    the length of the array

### get

    public final int get(int i)

  Gets the current value at position `i`.

  Parameters:
    `i` - the index
  Returns:
    the current value

### set

    public final void set(int i,
                          int newValue)

  Sets the element at position `i` to the given value.

  Parameters:
    `i` - the index
    `newValue` - the new value

### lazySet

    public final void lazySet(int i,
                              int newValue)

  Eventually sets the element at position `i` to the given value.

  Parameters:
    `i` - the index
    `newValue` - the new value
  Since:
    1.6

### getAndSet

    public final int getAndSet(int i,
                               int newValue)

  Atomically sets the element at position `i` to the given value and returns the old value.

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

### compareAndSet

    public final boolean compareAndSet(int i,
                                       int expect,
                                       int update)

  Atomically sets the element at position `i` to the given updated value if the current value `==` the expected value.

  Parameters:
    `i` - the index
    `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 final boolean weakCompareAndSet(int i,
                                           int expect,
                                           int update)

  Atomically sets the element at position `i` to the given updated value if the current value `==` the expected value. May fail spuriously.

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

### getAndIncrement

    public final int getAndIncrement(int i)

  Atomically increments by one the element at index `i`.

  Parameters:
    `i` - the index
  Returns:
    the previous value

### getAndDecrement

    public final int getAndDecrement(int i)

  Atomically decrements by one the element at index `i`.

  Parameters:
    `i` - the index
  Returns:
    the previous value

### getAndAdd

    public final int getAndAdd(int i,
                               int delta)

  Atomically adds the given value to the element at index `i`.

  Parameters:
    `i` - the index
    `delta` - the value to add
  Returns:
    the previous value

### incrementAndGet

    public final int incrementAndGet(int i)

  Atomically increments by one the element at index `i`.

  Parameters:
    `i` - the index
  Returns:
    the updated value

### decrementAndGet

    public final int decrementAndGet(int i)

  Atomically decrements by one the element at index `i`.

  Parameters:
    `i` - the index
  Returns:
    the updated value

### addAndGet

    public final int addAndGet(int i,
                               int delta)

  Atomically adds the given value to the element at index `i`.

  Parameters:
    `i` - the index
    `delta` - the value to add
  Returns:
    the updated value

### toString

    public java.lang.String toString()

  Returns the String representation of the current values of array.

  Returns:
    the String representation of the current values of array.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD