许多线程等待锁定一个对象,但没有线程持有该锁

Zam*_*mir 5 java multithreading

我有一个应用程序当前被卡住,我正在尝试了解原因。在kill -3(线程转储)输出中,我看到许多线程正在等待锁定对象(特别是等待Vector的同步方法),但我没有看到任何线程持有该锁。

知道如何调试吗?

谢谢

PS 我知道 Vector 很旧,更推荐使用 ArrayList,但这是我正在尝试调试的遗留代码。

Dif*_*din 2

您描述的情况听起来像是典型的僵局案例。

您可以(也许应该)使用 Eclipse 或 IntelliJ Idea 等 IDE,通过它们您可以逐步调试应用程序并准确了解它在哪里停止以及要做什么。

或者,粘贴一些代码将有助于澄清情况并根据 JVM 版本等描述您的环境。