死锁编码及定位分析(故障排查)
生活随笔
收集整理的這篇文章主要介紹了
死锁编码及定位分析(故障排查)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
什么是死鎖?
在Java中使用多線程,就會有可能導致死鎖問題。死鎖會讓程序一直卡住,不再程序往下執行。我們只能通過中止并重啟的方式來讓程序重新執行。
造成死鎖的原因:
- 當前線程擁有其他線程需要的資源
- 當前線程等待其他線程已擁有的資源
- 都不放棄自己擁有的資源
那么怎么判斷是死鎖,為什么不是死循環
/*** linux ps -ef|grep xxxx* windows下的java程序 也有類似ps的查看進程的命令,但是目前我們需要查看的只是java* jps = java ps jps -l*/在命令行下輸入jps -l,查看到當前的JUC.DeadLockDemo進程號10440
然后用jstack 10440來查看
很長就不全部截圖了,最后有個Found 1 deadlock
總結
以上是生活随笔為你收集整理的死锁编码及定位分析(故障排查)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 耐克中文官网升级:时间长达一个月
- 下一篇: 关闭近两个月:北京环球度假区终于要开放了