java虚拟机参数 stacktrace_java虚拟机性能监控与故障处理#2014-11-09#

IBM HeapAnalyzer

eclipse memory analyzer

如果是使用ide,例如eclipse

会有这样的一个文件(D:\2tools\myWorkspaces\miniui_java\.settings)

95916fb234aaf867c669258f90ca9314.png

我的eclipse运行web项目

-Dcatalina.base="D:\2tools\myWorkspaces\.metadata\.plugins\org.eclipse.wst.server.core\tmp0" -Dcatalina.home="D:\2tools\apache-tomcat-7.0.55-windows-x86" -Dwtp.deploy="D:\2tools\myWorkspaces\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps" -Djava.endorsed.dirs="D:\2tools\apache-tomcat-7.0.55-windows-x86\endorsed"

D:\2tools\java\jdk1.7.0_17\bin>jps -v

7240  -Dosgi.requiredJavaVersion=1.6 -Xms256m -Xmx512m -XX:PermSize=128M -XX:Max

PermSize=128M -XX:+UseParallelGC -Xverify:none

2056 Jps -Denv.class.path=.;D:\2tools\java\jdk1.8.0_18\lib;D:\2tools\java\jdk1.8

.0_18\lib\tools.jar -Dapplication.home=D:\2tools\java\jdk1.7.0_17 -Xms8m

=================================================================

利用jdk1.5中,java.lang.Thread类新增的一个getAllStackTraces()方法用于获取虚拟机中所有线程的StackTraceElement对象.使用这个方法可以通过简单几行代码完成jstack大部分功能,

服务器线程信息
 
 

for(Map.Entry stackTrace : Thread.getAllStackTraces().entrySet()){

Thread thread = (Thread).stackTrace.getKey();

StackTraceElement[] stack=(StackTraceElement[]).getValue();

if(thread.equals(Thead.currentThread())){

continue;

}

out.print("\n线程:"+thread.getName()+"\n");

for(StackTraceElement element :stack){

out.print("\t"+element+"\n");

}

}

%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值