一.先从定义上了解一下死锁
二.从代码角度上去解释一下死锁问题
三.上述程序就是出现了死锁,我们来查看一下
1.命令如下 cmd>>jps(查看到了死锁线程所在的类,前面是PID)
2.随后,输入命令jstack pid
3.我们来看一下,输入命令之后显示哪些内容如下:
*.线程1在等待获取锁,这个锁被线程0占用
*.线程0在等待获取锁,这个锁被线程1占用
如下信息告诉我们,产生死锁的位置
我们来看一下代码
四.如何避免产生死锁?