**
方法1.Synchronized
**
首先定义一个object:
Object object = new Object();
在线程A中,用notify()唤醒线程B
thread A{
synchronized (o) {
o.notify();
}
}
线程B一直在wait(),等待另一个线程(A)唤醒
thread B{
synchronized (object) {
object.wait();
//you may do sth here
}
}
**
方法2:ReentrantLock
**
首先定义一个ReentrantLock与一个condition
private ReentrantLock lock = new ReentrantLock();
private Condition con = lock.newCondition();
在线程A中,用signal()唤醒线程B
thread A{
lock.lock();
try {
con.signal();
}finally {
lock.unlock();
}
}
线程B一直在await(),等待另一个线程(A)唤醒
thread B{
lock.lock();
try {