EDU.oswego.cs.dl.util.concurrent
Class SynchronizedFloat
- Cloneable, Comparable, Executor
public class SynchronizedFloat
implements Comparable, Cloneable
SynchronizedFloat(float initialValue) - Make a new SynchronizedFloat with the given initial value,
and using its own internal lock.
|
SynchronizedFloat(float initialValue, Object lock) - Make a new SynchronizedFloat with the given initial value,
and using the supplied lock.
|
float | add(float amount) - Add amount to value (i.e., set value += amount)
|
boolean | commit(float assumedValue, float newValue) - Set value to newValue only if it is currently assumedValue.
|
int | compareTo(SynchronizedFloat other)
|
int | compareTo(Object other)
|
int | compareTo(float other)
|
float | divide(float factor) - Divide value by factor (i.e., set value /= factor)
|
boolean | equals(Object other)
|
float | get() - Return the current value
|
int | hashCode()
|
float | multiply(float factor) - Multiply value by factor (i.e., set value *= factor)
|
float | set(float newValue) - Set to newValue.
|
float | subtract(float amount) - Subtract amount from value (i.e., set value -= amount)
|
float | swap(SynchronizedFloat other) - Atomically swap values with another SynchronizedFloat.
|
String | toString()
|
value_
protected float value_
SynchronizedFloat
public SynchronizedFloat(float initialValue)
Make a new SynchronizedFloat with the given initial value,
and using its own internal lock.
SynchronizedFloat
public SynchronizedFloat(float initialValue,
Object lock)
Make a new SynchronizedFloat with the given initial value,
and using the supplied lock.
add
public float add(float amount)
Add amount to value (i.e., set value += amount)
- the new value
commit
public boolean commit(float assumedValue,
float newValue)
Set value to newValue only if it is currently assumedValue.
- true if successful
compareTo
public int compareTo(Object other)
compareTo
public int compareTo(float other)
divide
public float divide(float factor)
Divide value by factor (i.e., set value /= factor)
- the new value
equals
public boolean equals(Object other)
get
public final float get()
Return the current value
hashCode
public int hashCode()
multiply
public float multiply(float factor)
Multiply value by factor (i.e., set value *= factor)
- the new value
set
public float set(float newValue)
Set to newValue.
- the old value
subtract
public float subtract(float amount)
Subtract amount from value (i.e., set value -= amount)
- the new value
swap
public float swap(SynchronizedFloat other)
Atomically swap values with another SynchronizedFloat.
Uses identityHashCode to avoid deadlock when
two SynchronizedFloats attempt to simultaneously swap with each other.
(Note: Ordering via identyHashCode is not strictly guaranteed
by the language specification to return unique, orderable
values, but in practice JVMs rely on them being unique.)
- the new value
toString
public String toString()