当java程序发生死锁时,可以使用jstack进行查看:
1. windows下,进入cmd窗口,然后进入jdk的bin目录下:
cd C:\Program Files\Java\jdk1.7.0_67\bin
2.执行jps命令:
jps
3.执行jstack命令:
jstack -l 8372 // 8372就是发生死锁的线程id
可以看出,发生死锁的两个地方分别是:
package2.deadLock.DeadThread.run(DeadThread.java:37)
package2.deadLock.DeadThread.run(DeadThread.java:24)