java基础四---jdk内置工具的使用
2016-05-23 17:05
495 查看
0x01 JPS的使用
JPS是jdk内置工具,主要用来查看java进程以及机器上的所有jvm实例,默认连接端口为1099jps <hostid>: <hostname>[:<port>]
-q 只显示pid,不显示class名称,jar文件名和传递给main 方法的参数
-m 输出传递给main 方法的参数,在嵌入式jvm上可能是null
-l 输出应用程序main class的完整package名 或者 应用程序的jar文件完整路径名
-v 输出传递给JVM的参数
0x02 jinfo的使用
jinfo观察运行中的java程序的运行环境参数:参数包括Java System属性和JVM命令行参数,一般搭配jsp使用 用法: jinfo [option] <pid> jinfo [option] <executable <core> jinfo [option] [server_id@]<remote server IP or hostname> 参数:pid 进程号
executable 产生core dump的java executable
core core file
remote-hostname-or-IP 主机名或ip
server-id 远程主机上的debug server的唯一id
选项:
no option 打印命令行参数和系统属性
-flags 打印命令行参数
-sysprops 打印系统属性
-h 帮助
0x03 jstat的使用
一个极强的监视VM内存工具。可以用来监视VM内存内的各种堆和非堆的大小及其内存使用量。具体参数如下:
Option | Displays |
class | 用于查看类加载情况的统计 |
compiler | 用于查看HotSpot中即时编译器编译情况的统计 |
gc | 用于查看JVM中堆的垃圾收集情况的统计 |
gccapacity | 用于查看新生代、老生代及持久代的存储容量情况 |
gccause | 用于查看垃圾收集的统计情况(这个和-gcutil选项一样),如果有发生垃圾收集,它还会显示最后一次及当前正在发生垃圾收集的原因。 |
gcnew | 用于查看新生代垃圾收集的情况 |
gcnewcapacity | 用于查看新生代的存储容量情况 |
gcold | 用于查看老生代及持久代发生GC的情况 |
gcoldcapacity | 用于查看老生代的容量 |
gcpermcapacity | 用于查看持久代的容量 |
gcutil | 用于查看新生代、老生代及持代垃圾收集的情况 |
printcompilation | HotSpot编译方法的统计 |
-h n 用于指定每隔几行就输出列头,如果不指定,默认是只在第一行出现列头。 vmid - VM的进程号,即当前运行的java进程号。 interval–间隔时间,单位可以是秒或者毫秒,通过指定s或ms确定,默认单位为毫秒。
count-打印次数,如果缺省则打印无数次。
不同的统计维度(statOption)及输出说明
-class 类加载情况的统计列名 | 说明 |
Loaded | 加载了的类的数量 |
Bytes | 加载了的类的大小,单为Kb |
Uploaded | 卸载了的类的数量 |
Bytes | 卸载了的类的大小,单为Kb |
Time | 花在类的加载及卸载的时间 |
列名 | 说明 |
Compiled | 编译任务执行的次数 |
Failed | 编译任务执行失败的次数 |
Invalid | 编译任务非法执行的次数 |
Time | 执行编译花费的时间 |
FailedType | 最后一次编译失败的编译类型 |
FailedMethod | 最后一次编译失败的类名及方法名 |
http://docs.oracle.com/javase/1.5.0/docs/tooldocs/share/jstat.html
相关文章推荐
- Spring bean的初始化及销毁
- 在eclipse里头用checkstyle检查项目出现 File contains tab characters (this is the first instance)原因
- 关于在myeclipse 2014中发布web service服务时的报错解决
- Java 5种字符串拼接方式性能比较。
- Realm Java的学习、应用、总结
- 韩顺平Spring框架学习,学习笔记(一)
- 解决java.lang.IllegalStateException: Fragment not attached to Activity
- java的Arrays工具类实战
- Java面向对象编程 第一章 面向对象开发方法概述
- Java面向对象 第一章 面向对象开发方法概述
- Spring 框架的设计理念与设计模式分析
- java.lang.OutOfMemoryError处理错误
- java 数据采集
- Maven设置项目java默认编译版本
- java 字符串缓冲池 String缓冲池
- Java 协变数组和类型擦除(covariant array & type erasure)
- JAVA基础教程6:运行时类型识别(RTTI)
- Thinking in java 之 内部类
- Java Arrys的用法
- 《Head first in Java学习总结与收获》