我有一个Java应用程序没有结束。主方法已经完成但线程仍然活跃,该应用程序无法结束。问题是,似乎没有监视器锁/等待,所以我不知道为什么它无法结束。根据Eclipse的说法,我剩下了两个非Daemon线程。其中一个标记为[DestroyJavaVM](看起来很有希望!),而另一个似乎被阻塞在
第二个线程的简略堆栈跟踪如下:
Unsafe.park(boolean,long)
中。我应该从哪里开始调查呢?第二个线程的简略堆栈跟踪如下:
Unsafe.park(boolean, long)
at LockSupport.park(Object)
at AbstractQueuedSynchronizer$ConditionObject.await()
at LinkedBlockingQueue<E>.take()
at ThreadPoolExecutor.getTask()
at ThreadPoolExecutor$Worker.run()
at Thread.run()