public final class

ConditionLock

extends Lock
java.lang.Object
   ↳ sun.misc.Lock
     ↳ sun.misc.ConditionLock

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
From class java.lang.Object

Public Constructors

public ConditionLock ()

Creates a ConditionLock.

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
Throws
InterruptedException if any thread has interrupted this thread.

public synchronized void unlockWith (int newState)

Releases the lock, and sets the state to a new value.

Parameters
newState the new state