七、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之四--結(jié)合mat對(duì)內(nèi)存泄露的分析
六、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介紹(堆轉(zhuǎn)儲(chǔ)、堆分析、獲取系統(tǒng)信息、查看堆外內(nèi)存)
十三、jdk命令之Java內(nèi)存之本地內(nèi)存分析神器:NMT 和 pmap
?
jconsole:一個(gè)java?GUI監(jiān)視工具,可以以圖表化的形式顯示各種數(shù)據(jù)。并可通過遠(yuǎn)程連接監(jiān)視遠(yuǎn)程的服務(wù)器VM。用java寫的GUI程序,用來監(jiān)控VM,并可監(jiān)控遠(yuǎn)程的VM,非常易用,而且功能非常強(qiáng)。命令行里打?jconsole,選則進(jìn)程就可以了。
需要注意的就是在運(yùn)行jconsole之前,必須要先設(shè)置環(huán)境變量DISPLAY,否則會(huì)報(bào)錯(cuò)誤,Linux下設(shè)置環(huán)境變量如下:
export?DISPLAY=:0.0
?[root@localhost?bin]#?jconsole
那我在window機(jī)器上的結(jié)果是:
上兩個(gè)圖看一下:
可以這里選擇查看本地進(jìn)程的狀況,還是遠(yuǎn)程進(jìn)程的狀況。
通過這張圖可以看到內(nèi)存、線程、類及CPU使用的一些情況。
內(nèi)存情況:
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看上面的示例
?
轉(zhuǎn)載于:https://www.cnblogs.com/duanxz/archive/2012/11/02/2751192.html
總結(jié)
以上是生活随笔為你收集整理的七、jdk工具之jconsole命令(Java Monitoring and Management Console)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何直接操作SVN将分支代码合并到主干
- 下一篇: 微积分基础1-微分篇