import usrm.concurrency.Lock;
class MyThread implements Runnable {
private Lock lock;
public MyThread(Lock lock) {
this.lock = lock;
}
public void run() {
lock.lock();
try {
} finally {
lock.unlock();
}
}
}
import usrm.concurrency.Condition;
class MyThread implements Runnable {
private Lock lock;
private Condition condition;
public MyThread(Lock lock, Condition condition) {
this.lock = lock;
this.condition = condition;
}
public void run() {
lock.lock();
try {
while (!condition.isMet()) {
condition.await();
}
} finally {
lock.unlock();
}
}
}