verbose的第一次接觸

今天學習反射,第一次接觸到了verbose參數, -verbose[:class|gc|jni] enable verbose output。

verbose   [və:ˈbəus] a.冗長的
只加 -verbose這個參數,那麼會顯示所有加載的jar包的信息。
1,>java -verbose:class   可以查看JVM加載類的細節情況,如:
[Opened C:\Program Files\Genuitec\Common\binary\com.sun.java.jre.win32.x86_1.5.0.011\lib\rt.jar]
[Opened C:\Program Files\Genuitec\Common\binary\com.sun.java.jre.win32.x86_1.5.0.011\lib\jsse.jar]
[Opened C:\Program Files\Genuitec\Common\binary\com.sun.java.jre.win32.x86_1.5.0.011\lib\jce.jar]
。。。。。。。。。
[Loaded TestDynamicLoading from file:/F:/project/j2se/reflect/bin/]
[Loaded A from file:/F:/project/j2se/reflect/bin/]
+++++++++++++++++++++++++++++++++++++++++++
[Loaded B from file:/F:/project/j2se/reflect/bin/]
[Loaded C from file:/F:/project/j2se/reflect/bin/]
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
[Loaded D from file:/F:/project/j2se/reflect/bin/]
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
[Loaded java.lang.Shutdown from C:\Program Files\Genuitec\Common\binary\com.sun.java.jre.win32.x86_1.5.0.011\lib\rt.jar]
[Loaded java.lang.Shutdown$Lock from C:\Program Files\Genuitec\Common\binary\com.sun.java.jre.win32.x86_1.5.0.011\lib\rt.jar]
2,java -verbose:gc   可以查看JVM中垃圾回收器(Garbage Collector)的細節情況 。
 
 
測試源代碼:
public class TestDynamicLoading {

  public static void main(String[] args) {
    new A();
    System.out.println("+++++++++++++++++++++++++++++++++++++++++++");
    new B();

    new C();
    new C();

    new D();
    new D();
  }

}

class A {

}

class B {

}

class C {
  static {
    System.out.println("CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC");
  }
}

class D {
  {
    System.out.println("DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD");
  }
}
本人用的是MyEclipse,運行方式如下:
     右擊-->run as -->Run Configurations -->java Application-->Arguments-->VM argument:-->輸入:-verbose:class
附圖:
 
 
關於tomcat的我沒有試驗過。。有時間的時候再試下。。。
例如,在 tomcat 的catalina.bat中,我設置了下面的參數
set JAVA_OPTS=-Xms256m -Xmx512m -verbose:gc
請只關注後面 -verbose:gc ,
通過這個參數
Tomcat的控制檯就會顯示垃圾回收的信息。下面的數據就是我啓動tomcat後的信息。
[Full GC[Unloading class sun.reflect.GeneratedMethodAccessor1]
41708K->38756K(260224K), 0.3426368 secs]
[Full GC 43119K->38247K(260224K), 0.4136464 secs]
[Full GC 40871K->38362K(260224K), 0.3341053 secs]
[Full GC 42715K->38510K(260224K), 0.3385179 secs]
[Full GC 40315K->38620K(260224K), 0.3413453 secs]
[Full GC 43824K->38247K(260224K), 0.3419359 secs]
[Full GC 38864K->38248K(260224K), 0.3381592 secs]
[Full GC 44651K->38396K(260224K), 0.3394378 secs]
[Full GC 39013K->38397K(260224K), 0.3328110 secs]
[Full GC 44800K->38247K(260224K), 0.3421133 secs]
[Full GC 38864K->38248K(260224K), 0.3325286 secs]
[Full GC 44667K->38396K(260224K), 0.3378927 secs]
[Full GC 39030K->38397K(260224K), 0.3369738 secs]
[Full GC 44816K->38247K(260224K), 0.3374778 secs]
[Full GC 38881K->38248K(260224K), 0.3361986 secs]
[Full GC 44803K->38396K(260224K), 0.3390643 secs]
[Full GC 39030K->38397K(260224K), 0.3376407 secs]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章