我正在对一个不正常的关闭进行故障排除,所以我想获得一个在 jvisualvm(或其他)中运行的非守护线程的列表来寻找罪魁祸首。
最佳答案
jstack 转储所有线程,有一个文本会告诉它是否是守护进程
( jvisualvm 在“ThreadDump”中产生相同的输出- See this link for more useful documentation
"Reference Handler" daemon prio=10 tid=0x00a98400 nid=0x1ee8 in Object.wait() [0x00b6f000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked <0x19835fa0> (a java.lang.ref.Reference$Lock)
"VM Thread" prio=10 tid=0x00a95800 nid=0x264 runnable
关于java - 在 jvisualvm 中获取正在运行的非守护线程列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8984413/