VisualVM 支持执行不安全的 BTrace 脚本 ( https://kenai.com/projects/btrace/pages/UserGuide )。是否可以使用不安全的 BTrace 脚本来杀死/中断一些 Java 线程?我的 Eclipse IDE 中的一些线程死锁了,我想优雅地关闭 IDE。
“Worker-3571”prio=6 tid=0x00000000114b7800 nid=0x964 等待监视器条目 [0x000000002a45f000] java.lang.Thread.State: BLOCKED (on object monitor) at org.eclipse.jdt.internal.ui.viewsupport.SelectionListenerWithASTManager$ PartListenerGroup$3.run(SelectionListenerWithASTManager.java:155) - 等待在 org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) 处锁定 <0x00000000f7490ce8> (一个 java.lang.Object)
“Worker-3568”prio=6 tid=0x00000000114b9000 nid=0x2984 等待监视器条目 [0x000000002958f000] java.lang.Thread.State: BLOCKED (on object monitor) at org.eclipse.jdt.internal.ui.viewsupport.SelectionListenerWithASTManager$ PartListenerGroup$3.run(SelectionListenerWithASTManager.java:155) - 等待在 org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) 处锁定 <0x00000000f7490ce8> (一个 java.lang.Object)
“Worker-3570”prio=6 tid=0x00000000114bc000 nid=0x1980 in Object.wait() [0x000000002998f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST(ASTProvider.java:457) 处的 java.lang.Object.wait(Object.java:503) - 锁定 <0x00000000e10979a0>(一个 java.lang.Object)在 org.eclipse.jdt.ui.SharedASTProvider.getAST(SharedASTProvider.java:128) 在 org.eclipse.jdt 在 org.eclipse.jdt.internal.ui.viewsupport.SelectionListenerWithASTManager$PartListenerGroup.calculateASTandInform(SelectionListenerWithASTManager.java:170) .internal.ui.viewsupport.SelectionListenerWithASTManager$PartListenerGroup$3.run(SelectionListenerWithASTManager.java:155) - 在组织中锁定 <0x00000000f7490ce8>(一个 java.lang.Object)。eclipse.core.internal.jobs.Worker.run(Worker.java:53)