java虚拟机工具入门
2016-03-16 17:07
246 查看
jps
能显示现在都有那些java程序运行C:\Users\Administrator>jps 16964 DeadLockJstack 9172 PULSEI~1.JAR 19392 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://blog.csdn.net/maosijunzi/article/details/46124405http://www.jianshu.com/p/c6a04c88900a?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io
http://www.cnblogs.com/o-andy-o/archive/2013/06/11/3132335.html
相关文章推荐
- 六:java中线程范围内共享变量--ThreadLocal
- 在myEclipse安装axis2插件(1)
- Spring声明式事务
- Java:对象的强、软、弱和虚引用
- 排序算法-快速排序
- 一个java文件只能有一个public类,而且此类的名字须与文件名一致
- 关于struts的类型转换
- SpringMVC注解版前台向后台传值的两种方式
- 学习Java的小结1
- 关乎java中类的初始化问题1
- JAVA IO(2)
- Javabean
- JAVA IO(1)
- 整合Activiti Modeler到SpringMVC
- 放麦子_蓝桥杯题目
- javamail实现邮箱验证功能
- Java中equal和==的区别是什么
- leetcode:Contains Duplicate 【Java】
- java类
- Java多线程