public class WaitableLong extends SynchronizedLong
value_
lock_
Constructor and Description |
---|
WaitableLong(long initialValue)
Make a new WaitableLong with the given initial value,
and using its own internal lock.
|
WaitableLong(long initialValue,
java.lang.Object lock)
Make a new WaitableLong with the given initial value,
and using the supplied lock.
|
Modifier and Type | Method and Description |
---|---|
long |
add(long amount)
Add amount to value (i.e., set value += amount)
|
long |
and(long b)
Set value to value & b.
|
boolean |
commit(long assumedValue,
long newValue)
Set value to newValue only if it is currently assumedValue.
|
long |
complement()
Set the value to its complement
|
long |
decrement()
Decrement the value.
|
long |
divide(long factor)
Divide value by factor (i.e., set value /= factor)
|
long |
increment()
Increment the value.
|
long |
multiply(long factor)
Multiply value by factor (i.e., set value *= factor)
|
long |
or(long b)
Set value to value | b.
|
long |
set(long newValue)
Set to newValue.
|
long |
subtract(long amount)
Subtract amount from value (i.e., set value -= amount)
|
void |
whenEqual(long c,
java.lang.Runnable action)
Wait until value equals c, then run action if nonnull.
|
void |
whenGreater(long c,
java.lang.Runnable action)
wait until value greater than c, then run action if nonnull.
|
void |
whenGreaterEqual(long c,
java.lang.Runnable action)
wait until value greater than or equal to c, then run action if nonnull.
|
void |
whenLess(long c,
java.lang.Runnable action)
wait until value less than c, then run action if nonnull.
|
void |
whenLessEqual(long c,
java.lang.Runnable action)
wait until value less than or equal to c, then run action if nonnull.
|
void |
whenNotEqual(long c,
java.lang.Runnable action)
wait until value not equal to c, then run action if nonnull.
|
long |
xor(long b)
Set value to value ^ b.
|
compareTo, compareTo, compareTo, equals, get, hashCode, negate, swap, toString
execute, getLock
public WaitableLong(long initialValue)
public WaitableLong(long initialValue, java.lang.Object lock)
public long set(long newValue)
SynchronizedLong
set
in class SynchronizedLong
public boolean commit(long assumedValue, long newValue)
SynchronizedLong
commit
in class SynchronizedLong
public long increment()
SynchronizedLong
increment
in class SynchronizedLong
public long decrement()
SynchronizedLong
decrement
in class SynchronizedLong
public long add(long amount)
SynchronizedLong
add
in class SynchronizedLong
public long subtract(long amount)
SynchronizedLong
subtract
in class SynchronizedLong
public long multiply(long factor)
SynchronizedLong
multiply
in class SynchronizedLong
public long divide(long factor)
SynchronizedLong
divide
in class SynchronizedLong
public long complement()
complement
in class SynchronizedLong
public long and(long b)
and
in class SynchronizedLong
public long or(long b)
or
in class SynchronizedLong
public long xor(long b)
xor
in class SynchronizedLong
public void whenEqual(long c, java.lang.Runnable action) throws java.lang.InterruptedException
java.lang.InterruptedException
public void whenNotEqual(long c, java.lang.Runnable action) throws java.lang.InterruptedException
java.lang.InterruptedException
public void whenLessEqual(long c, java.lang.Runnable action) throws java.lang.InterruptedException
java.lang.InterruptedException
public void whenLess(long c, java.lang.Runnable action) throws java.lang.InterruptedException
java.lang.InterruptedException
public void whenGreaterEqual(long c, java.lang.Runnable action) throws java.lang.InterruptedException
java.lang.InterruptedException
public void whenGreater(long c, java.lang.Runnable action) throws java.lang.InterruptedException
java.lang.InterruptedException