Build 1.0_r1(from source)

java.util.concurrent.atomic
Class AtomicReferenceArray<E>

java.lang.Object
  extended by java.util.concurrent.atomic.AtomicReferenceArray<E>
Type Parameters:
E - The base class of elements held in this array
All Implemented Interfaces:
Serializable

public class AtomicReferenceArray<E>
extends Object
implements Serializable

An array of object references in which elements may be updated atomically. See the java.util.concurrent.atomic package specification for description of the properties of atomic variables.

Since:
1.5
See Also:
Serialized Form

Constructor Summary
AtomicReferenceArray(E[] array)
          Create a new AtomicReferenceArray with the same length as, and all elements copied from, the given array.
AtomicReferenceArray(int length)
          Create a new AtomicReferenceArray of given length.
 
Method Summary
 boolean compareAndSet(int i, E expect, E update)
          Atomically set the value to the given updated value if the current value == the expected value.
 E get(int i)
          Get the current value at position i.
 E getAndSet(int i, E newValue)
          Set the element at position i to the given value and return the old value.
 int length()
          Returns the length of the array.
 void set(int i, E newValue)
          Set the element at position i to the given value.
 String toString()
          Returns the String representation of the current values of array.
 boolean weakCompareAndSet(int i, E expect, E 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

AtomicReferenceArray

public AtomicReferenceArray(int length)
Create a new AtomicReferenceArray of given length.

Parameters:
length - the length of the array

AtomicReferenceArray

public AtomicReferenceArray(E[] array)
Create a new AtomicReferenceArray with the same length as, and all elements copied from, the given array.

Parameters:
array - the array to copy elements from
Throws:
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 E get(int i)
Get the current value at position i.

Parameters:
i - the index
Returns:
the current value

set

public final void set(int i,
                      E newValue)
Set the element at position i to the given value.

Parameters:
i - the index
newValue - the new value

getAndSet

public final E getAndSet(int i,
                         E newValue)
Set the element at position i to the given value and return the old value.

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

compareAndSet

public final boolean compareAndSet(int i,
                                   E expect,
                                   E update)
Atomically set the value 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,
                                       E expect,
                                       E update)
Atomically set the value 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.

toString

public String toString()
Returns the String representation of the current values of array.

Overrides:
toString in class Object
Returns:
the String representation of the current values of array.

Build 1.0_r1(from source)

Please submit a feedback, bug or feature