java虚拟机工具入门

网友投稿 202 2022-10-30


java虚拟机工具入门

jps

能显示现在都有那些java程序运行

C:\Users\Administrator>jps16964 DeadLockJstack9172 PULSEI~1.JAR19392 Jps

那个9172 代表的应该是eclipse

jstack

能查看线程栈信息

大致上有下面几种情况

NEW,未启动的。不会出现在Dump中。 RUNNABLE,在虚拟机内执行的。

RUNNABLE状态表示线程正在执行,也有两种情况第一种是线程真正的在执行,另外一种是线程因为IO而阻塞。

BLOCKED,等待获得监视器锁。    synchronized 等待某个对象的锁 WATING,无限期等待另一个线程执行特定操作。 就是synchronized里的wait TIMED_WATING,有时限的等待另一个线程的特定操作。 就是Thread.sleep TERMINATED,已退出的。

jmap

jmap -histo pid 展示class的内存情况 即每个类实例化了多少个

jmap -heap pid 展示pid的整体堆信息 各个代的内存占用情况

参考资料

​​http://jianshu.com/p/c6a04c88900a?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io​​


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:java实现播放背景音乐
下一篇:大型网站技术架构 读书笔记3 高性能架构
相关文章

 发表评论

暂时没有评论,来抢沙发吧~