七、jdk工具之jconsole命令(Java Monitoring and Management Console)
目錄
一、jdk工具之jps(JVM Process Status Tools)命令使用
二、jdk命令之javah命令(C Header and Stub File Generator)
三、jdk工具之jstack(Java Stack Trace)
四、jdk工具之jstat命令(Java Virtual Machine Statistics Monitoring Tool)
四、jdk工具之jstat命令2(Java Virtual Machine Statistics Monitoring Tool)詳解
五、jdk工具之jmap(java memory map)、 mat之四--結合mat對內存泄露的分析
六、jdk工具之jinfo命令(Java Configuration Info)
七、jdk工具之jconsole命令(Java Monitoring and Management Console)
八、jdk工具之JvisualVM、JvisualVM之二--Java程序性能分析工具Java VisualVM
九、jdk工具之jhat命令(Java Heap Analyse Tool)
十、jdk工具之Jdb命令(The Java Debugger)
十一、jdk命令之Jstatd命令(Java Statistics Monitoring Daemon)
十一、jdk命令之Jstatd命令(Java Statistics Monitoring Daemon)
十二、jdk工具之jcmd介紹(堆轉儲、堆分析、獲取系統信息、查看堆外內存)
十三、jdk命令之Java內存之本地內存分析神器:NMT 和 pmap
?
jconsole:一個java?GUI監視工具,可以以圖表化的形式顯示各種數據。并可通過遠程連接監視遠程的服務器VM。用java寫的GUI程序,用來監控VM,并可監控遠程的VM,非常易用,而且功能非常強。命令行里打?jconsole,選則進程就可以了。
需要注意的就是在運行jconsole之前,必須要先設置環境變量DISPLAY,否則會報錯誤,Linux下設置環境變量如下:
export?DISPLAY=:0.0
?[root@localhost?bin]#?jconsole
那我在window機器上的結果是:
上兩個圖看一下:
可以這里選擇查看本地進程的狀況,還是遠程進程的狀況。
通過這張圖可以看到內存、線程、類及CPU使用的一些情況。
內存情況:
VM概要:
?
?
示例1
package mat; public class Deadlock implements Runnable{private int a;private int b;public Deadlock(int a, int b) {super();this.a = a;this.b = b;}@Overridepublic void run() {synchronized (Integer.valueOf(a)) {synchronized (Integer.valueOf(b)) {System.out.println("a+b="+(a+b));}}}public static void main(String[] args) {for(int i = 0; i < 1000; ++i){new Thread(new Deadlock(1, 2)).start();new Thread(new Deadlock(2, 1)).start();}} }用jconsole連接上后,看線程頁
看死鎖信息:
?
用jvisualVM看上面的示例
?
轉載于:https://www.cnblogs.com/duanxz/archive/2012/11/02/2751192.html
總結
以上是生活随笔為你收集整理的七、jdk工具之jconsole命令(Java Monitoring and Management Console)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何直接操作SVN将分支代码合并到主干
- 下一篇: Highcharts 本地导出图片 Ja