JVM:jstack
生活随笔
收集整理的這篇文章主要介紹了
JVM:jstack
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
jstack:? ?stack trace for java
用途:用于生成虛擬機(jī)當(dāng)前時(shí)刻的線程快照
(何為線程快照?就是指當(dāng)前虛擬機(jī)中每一條線程正在執(zhí)行的方法堆棧的集合)
(為何要生成線程快照?為了定位線程出現(xiàn)長(zhǎng)時(shí)間停頓的原因。)
什么可以導(dǎo)致線程出現(xiàn)長(zhǎng)時(shí)間的停頓?
1)線程間死鎖
2)死循環(huán)
3)請(qǐng)求外部資源導(dǎo)致長(zhǎng)時(shí)間的等待
應(yīng)用場(chǎng)景:
線程出現(xiàn)了長(zhǎng)時(shí)間的停頓,就可以使用jstack來(lái)查看各個(gè)線程的調(diào)用堆棧。也就可以從中知道沒(méi)有相應(yīng)的線程在后臺(tái)到底在干啥!
命令格式:
jstack [option]? vmid
?
-F 強(qiáng)制輸出
-l 附加輸出鎖的附加信息
-m 調(diào)用本地方法時(shí),顯示C/C++堆棧
總結(jié)
以上是生活随笔為你收集整理的JVM:jstack的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 多线程:无锁、偏向锁、轻量锁、重量级锁
- 下一篇: 多线程:线程池