假设一个线程多次获取资源的可重入锁并死掉。资源会怎样?其他客户端可以访问该资源吗?
问问题
290 次
2 回答
3
论证证明:
public static void main(String[] args) throws InterruptedException {
final ReentrantLock lock = new ReentrantLock();
final Thread t = new Thread(()->lock.lock());
t.start();
t.join();
System.out.println(t.isAlive());
System.out.println(lock.tryLock());
}
它打印
false
false
于 2014-10-10T14:00:43.297 回答
0
对我来说,这听起来像是一个经典的僵局。如果锁不是由所有者释放的 - 它将永远保持锁定状态并且为所有人。
于 2014-10-10T13:43:43.357 回答