查看线程
top -p pid再按H或者直接输入top−bH−d3−p {pid}
jstack定位
.通过jstack命令dump出堆栈
“AppController_ThreadPool_L2_Pool Thread” daemon prio=10 tid=0x0000000051c2b000 nid=0x7bb3 in Object.wait() [0x000000005e3c5000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at org.company.threadpool.ThreadPoolImpl
PoolThread.run(ThreadPoolImpl.java:142)−locked<0x00002aaca30341a8>(aorg.company.threadpool.ThreadPoolImpl
PoolThread)
其中的nid就是线程的编码,只不过是经过了16进制的转换。
即十进制的31776对应的十六进制)0x7bb3,定位到线程后一切好办。