Class Overview
ConditionLock is a Lock with a built in state variable. This class
provides the ability to wait for the state variable to be set to a
desired value and then acquire the lock.
The lockWhen() and unlockWith() methods can be safely intermixed
with the lock() and unlock() methods. However if there is a thread
waiting for the state variable to become a particular value and you
simply call Unlock(), that thread will not be able to acquire the
lock until the state variable equals its desired value.
Summary
Public Constructors |
|
ConditionLock()
Creates a ConditionLock.
|
|
ConditionLock(int initialState)
Creates a ConditionLock in an initialState.
|
Public Methods |
synchronized
void
|
lockWhen(int desiredState)
Acquires the lock when the state variable equals the desired state.
|
synchronized
void
|
unlockWith(int newState)
Releases the lock, and sets the state to a new value.
|
[Expand]
Inherited Methods |
From class
sun.misc.Lock
synchronized
final
void
|
lock()
Acquire the lock.
|
synchronized
final
void
|
unlock()
Release the lock.
|
|
From class
java.lang.Object
Object
|
clone()
Creates and returns a copy of this object.
|
boolean
|
equals(Object obj)
Indicates whether some other object is "equal to" this one.
|
void
|
finalize()
Called by the garbage collector on an object when garbage collection
determines that there are no more references to the object.
|
final
Class<?>
|
getClass()
Returns the runtime class of this Object .
|
int
|
hashCode()
Returns a hash code value for the object.
|
final
void
|
notify()
Wakes up a single thread that is waiting on this object's
monitor.
|
final
void
|
notifyAll()
Wakes up all threads that are waiting on this object's monitor.
|
String
|
toString()
Returns a string representation of the object.
|
final
void
|
wait()
Causes the current thread to wait until another thread invokes the
notify() method or the
notifyAll() method for this object.
|
final
void
|
wait(long timeout, int nanos)
Causes the current thread to wait until another thread invokes the
notify() method or the
notifyAll() method for this object, or
some other thread interrupts the current thread, or a certain
amount of real time has elapsed.
|
final
void
|
wait(long timeout)
Causes the current thread to wait until either another thread invokes the
notify() method or the
notifyAll() method for this object, or a
specified amount of time has elapsed.
|
|
Public Constructors
public
ConditionLock
(int initialState)
Creates a ConditionLock in an initialState.
Public Methods
public
synchronized
void
lockWhen
(int desiredState)
Acquires the lock when the state variable equals the desired state.
Parameters
desiredState
| the desired state |
public
synchronized
void
unlockWith
(int newState)
Releases the lock, and sets the state to a new value.