一、概述
SUN的JDK中的几个工具非常易于使用。坚持免费和无商业用途的原则。这里是这些工具的简要介绍。 (注意:本文中的所有工具都存储在JDK 5. 0及更高版本的工具集中(在jdk的bin目录中),就像Javac一样,您无需双击即可安装它)。
我总共发现了以下四个工具:专注于jconsole和jmap。
1. jps
类似于unix上的ps,它用于显示本地Java进程。您可以查看几个在本地运行的Java程序并显示其进程号。
2. jstat
一个非常强大的工具,用于监视VM内存。它可用于监视VM内存中各种堆和非堆的大小及其内存使用情况。
3. jmap
打印出Java进程内存中的所有“对象”(使用pid)(例如那些对象及其编号)。

4. jconsole
一个Java GUI监视工具,可以以图形形式显示各种数据。并可以通过远程连接监视远程服务器VM。
二、使用简介:
1、 jstat:我认为很在UNIX系统中使用过ps命令。该命令主要用于显示当前系统进程,其中存在哪些进程及其ID。 jps也是如此。它的功能是显示当前系统的Java进程及其ID号。我们可以用它来检查我们已经启动了多少个Java进程(因为每个Java程序都会有一个专有的Java虚拟机实例),以及它们的进程号(为以下程序准备),并且可以通过以下方式查看:这些过程。
使用方法:在当前命令行下键入jps(如果不需要,请输入JAVA_HOME,请转到更改程序的目录)。
不幸的是,在Linux下ps使用起来不那么容易,而且名称也不容易使用。但是在第四个工具jconsole的界面中,将有特定JAR软件包的名称。
2、 jstat:监视VM内存使用情况。
jstat工具非常强大,具有许多选项,堆的每个部分的用法的详细视图以及已加载类的数量。使用时,您需要添加查看过程的过程ID和选定的参数。每个参数的含义将在下面详细说明。
jstat -class pid:显示诸如已加载类的数量和所占用的空间之类的信息。

jstat -compiler pid:显示诸如VM的实时编译数量之类的信息。
jstat -gc pid:可以显示gc信息,检查gc的数量和时间。最后五个项目是年轻gc的数量,年轻gc的时间,完整gc的数量,完整gc的时间以及gc的总时间。
jstat -gccapacity:可以显示VM内存中三代(年轻,旧,烫发)对象的使用情况和占用大小,例如:PGCMN显示最小烫发的内存使用情况,PGCMX显示最大内存烫发的使用情况PGC是新生成的烫发的内存占用,而PC是先前烫发的内存占用。用这个比喻可以推论其他人,OC是古老的纯居住。
jstat -gcnew pid:新的对象信息。
jstat -gcnewcapacity pid:有关新对象及其占用率的信息。
jstat -gcold pid
ld对象的信息。
jstat -gcoldcapacity pid

ld对象的信息及其占用情况。
jstat -gcpermcapacity pid:烫发对象信息及其占用。
jstat -util pid:统计gc信息统计。
jstat -printcompilation pid:当前VM执行信息。
除了上述参数外,还可以同时添加两个数字,例如:jstat -printcompilation 3024 250每250毫秒打印6次,共6次打印,还可以添加-h3来显示每三行显示一次标题。
3、 jmap是可以输出内存中所有对象的工具,甚至VM中的堆也可以文本形式输出为二进制。如何使用jmap -histo pid。如果使用SHELL jmap -histo pid> a.log,则可以将其保存为文本(也可以在Windows下使用)。一段时间后,使用文本比较工具比较GC恢复的对象。 jmap -dump:format = b,file = f1 3024可以将3024进程的内存堆输出到f1文件。
4、 jconsole是用Java编写的GUI程序。它用于监视VM,并且可以监视远程VM。它非常易于使用且功能强大。由于它是一个GUI程序,因此在此不再详细介绍。如果没有,则可以参考SUN的官方文档。
使用方法:在命令行中点击jconsole并选择进程。
友好的提醒:Windows查看进程ID。由于任务管理器默认情况下不显示进程ID,因此可以通过以下方法添加它。 ctrl + alt + del打开任务管理器,选择“进程”选项卡,单击“视图”->“选择列”->添加“ PID”,它将起作用。当然,还有其他不错的选择。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shoujiruanjian/article-374527-1.html
我红旗系列远中近距离导弹就位
对于破坏亚洲地区稳定
解救股灾被套资金
做为老百姓不建议