edu.emory.mathcs.backport.java.util.concurrent.atomic
Class AtomicReferenceArray
java.lang.Object
edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicReferenceArray
- java.io.Serializable
public class AtomicReferenceArray
extends java.lang.Object
implements java.io.Serializable
An array of object references 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.
AtomicReferenceArray(Object[] array) - Creates a new AtomicReferenceArray with the same length as, and
all elements copied from, the given array.
|
AtomicReferenceArray(int length) - Creates a new AtomicReferenceArray of given length.
|
boolean | compareAndSet(int i, Object expect, Object update) - Atomically sets the element at position i to the given
updated value if the current value == the expected value.
|
Object | get(int i) - Gets the current value at position i.
|
Object | getAndSet(int i, Object newValue) - Atomically sets the element at position i to the given
value and returns the old value.
|
void | lazySet(int i, Object newValue) - Eventually sets the element at position i to the given value.
|
int | length() - Returns the length of the array.
|
void | set(int i, Object newValue) - Sets 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, Object expect, Object update) - Atomically sets the element at position i to the given
updated value if the current value == the expected value.
|
AtomicReferenceArray
public AtomicReferenceArray(Object[] array)
Creates a new AtomicReferenceArray with the same length as, and
all elements copied from, the given array.
array
- the array to copy elements from
AtomicReferenceArray
public AtomicReferenceArray(int length)
Creates a new AtomicReferenceArray of given length.
length
- the length of the array
compareAndSet
public final boolean compareAndSet(int i,
Object expect,
Object update)
Atomically sets the element at position i to the given
updated value if the current value == the expected value.
i
- the indexexpect
- the expected valueupdate
- the new value
- true if successful. False return indicates that
the actual value was not equal to the expected value.
get
public final Object get(int i)
Gets the current value at position i.
getAndSet
public final Object getAndSet(int i,
Object newValue)
Atomically sets the element at position i to the given
value and returns the old value.
i
- the indexnewValue
- the new value
lazySet
public final void lazySet(int i,
Object newValue)
Eventually sets the element at position i to the given value.
i
- the indexnewValue
- the new value
length
public final int length()
Returns the length of the array.
set
public final void set(int i,
Object newValue)
Sets the element at position i to the given value.
i
- the indexnewValue
- the new value
toString
public String toString()
Returns the String representation of the current values of array.
- the String representation of the current values of array.
weakCompareAndSet
public final boolean weakCompareAndSet(int i,
Object expect,
Object update)
Atomically sets the element at position i to the given
updated value if the current value == the expected value.
May fail spuriously.
i
- the indexexpect
- the expected valueupdate
- the new value