易截截图软件、单文件、免安装、纯绿色、仅160KB

[Java性能剖析]JVM Management API


      
JVM本身提供了一组管理的API,通过该API,我们可以获取得到JVM内部主要运行信息,包括内存各代的数据、JVM当前所有线程及其栈相关信息等
等。各种JDK自带的剖析工具,包括jps、jstack、jinfo、jstat、jmap、jconsole等,都是基于此API开发的。本篇对这部
分内容进行一个详细的说明。
       参考:http://java.sun.com/javase/6/docs/api/java/lang/management/package-summary.html
一、Management API
       我们先看一下从Sun JVM我们可以获取到哪些信息,如下图(来自于JConsole的MBean部分的截图):
      
      1.HotSpotDiagnostic:非标准的监控JMX,这块是Sun JVM自带的,主要提供了两个功能
修改JVM的启动参数(譬如在不需要重启的情况下设置-XX:+HeapDumpOnOutOfMemoryError参数使得JVM内存不足的时候自动dump出堆空间到文件提供后续分析)
Dump堆信息到文件,可以猜测jmap工具是基于此功能来完成的
     我们通过com.sun.management.HotSpotDiagnosticMXBean定义了解其主要功能
Java代码 < type="application/x-shockwave-flash" width="14" height="15" src="http://ayufox.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" src="http://ayufox.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=public%20interface%20HotSpotDiagnosticMXBean%0A%7B%0A%20%20%20%20void%20dumpHeap(String%20s%2C%20boolean%20flag)%20throws%20IOException%3B%0A%20%20%20%20List%20getDiagnosticOptions()%3B%0A%20%20%20%20VMOption%20getVMOption(String%20s)%3B%0A%20%20%20%20void%20setVMOption(String%20s%2C%20String%20s1)%3B%0A%7D" quality="high" allowscriptaccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" height="15" width="14">
public
 
interface
 HotSpotDiagnosticMXBean  
{  
    void
 dumpHeap(String s, 
boolean
 flag) 
throws
 IOException;  
    List get


相关文档:

截取字符串(中英混合串) JAVA代码

public class SplitString {
    /**
     * @param args
     */
   
    public static void main(String[] args) {
        String str = "中Zell中国5000年,Congruations!";
& ......

JAVA并发编程笔记(3)

Publication and Escape 发布一个对象意味着能够从它能够从它当前范围之外被访问到。比如,保存可以被其他代码找到的这个对象的一个引用,或者将其作为一个非私有方法的返回值,或者将其作为参数传递给其它的类。 public static Set<Secret> knownSecrets;
public void initialize() {
knownSecrets = new Ha ......

java的相关技术

     1、JDBC(Java Database Connectivity)提供连接各种关系数据库的统一接口。
  2、EJB(Enterprise JavaBeans)使得开发者方便地创建、部署和管理跨平台的基于组件的企业应用。
  3、Java RMI(Java Remote Method Invocation)用来开发分布式Java应用程序。一个Java对象的方法能被远程Java虚拟 ......

Java类的初始化顺序

Java类的初始化顺序
  我把Java类的初始化顺序分为两部分。第一部分是类的初始化,第二部分是对象的初始化。
  在初始化之前JVM必须先把该类的字节码加载到内存中来。这时不管创不创建对象都会马上执行类的初始化:
  执行静态初始化表达式(如static int a = 10)和静态初始化块(即static{}中的内容),注意两 ......

JAVA并发编程实践 读书笔记

最近读完<Java并发编程实践>,无疑这是一本好书,它使得我对线程,锁,以及与并发相关的
一些知识体系更加完备,闲话不多说,下面我系统梳理了下里面的一些理论要点,相信实践上
面,大家或多或少都会有体会,那么用理论的知识点将实践体会笼络起来,将会形成更加牢固
和完备的知识体系,至少我这么认为,写这一篇笔记也是用以 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号