林声明类型条件的变量:重新获取锁
private Condition waitingCond;
然后,在Bridge
构造我声明关联到相同的变量的状态变量:在阻塞方法
waitingCond = lock.NewCondition();
然后,我有这个:
public void getIn(int direction) throws InterruptedException{
lock.lock();
try{
if(direction == Car.DIR_NORTH){
while((nSudWaiting>0))
waitingCond.await();
nNordWaiting++;
//...............
} else {
//............
} waitingCond.signal();
}
finally{
lock.unlock()
}
}
问题:
我是说我在这里说,这个方法等待暗示释放锁吗?
waitingCond.await(); // waiting release lock
如果我上面说的是正确的,下面的语句是否再次启用锁定(线程持有锁定)?
waitingCond.await(); // waiting release lock
nNordWaiting++; // getting back the lock
我想了解的是:任何一种下列waitingCond.await();
可以重新获取锁语句?
非常感谢。
下面的答案有帮助吗?如果是这样,你应该接受它作为答案。 –