例如 public void set(String name)throws InterruptedException
{
lock.lock();//上锁
try
{
while(flag)
condition_pro.await(); // 能不能放在lock.lock()上面,不能为什么
this.name=name+"----"+count++;
System.out.println(Thread.currentThread().getName()+"...生产者。。。"+this.name);
flag=true;
condition_cus.signal();//由signal()替换notify(),由signalAll()替换notifyAll()。只唤醒消费方法;
}
finally
{
lock.unlock();
}
} |
|