Java中的线程在技术上有可能死锁自己吗?
在不久前的一次面试中,我被问到这个问题,我回答说这是不可能的,但面试官告诉我这是可能的。不幸的是,我不能得到他关于如何实现这个死锁的方法。
这让我开始思考,我能想到的唯一情况是,你有一个RMI服务器进程,其中包含一个调用自身的方法。调用该方法的代码行被放在synchronized块中。
这是可能的吗?还是面试官说错了?
我所考虑的源代码就是这样的( testDeadlock在RMI服务器进程中运行)
public boolean testDeadlock () throws RemoteException {
synchronized (this) {
//Call testDeadlock via RMI loopback
}
}https://stackoverflow.com/questions/3493441
复制相似问题