verbose的第一次接触
2009-10-17 22:10
246 查看
今天学习反射,第一次接触到了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]
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]
相关文章推荐
- Eventbus的第一次接触
- 第001讲:我和Python的第一次亲密接触 | 课后测试题及答案
- 我与 Run-Time Check #0 的第一次亲密接触
- 第一次接触的cocoaPods
- 一个mysql的存储过程 第一次接触请大家指点一下
- 第一次接触javascript脚本:进度条脚本
- NTKO OFFICE 第一次接触
- 第一次接触PhoneGap
- Lucene .NET 的第一次接触 Lucene PK SQL 2005 模糊搜索
- Linux那些事儿之我是U盘(26)第一次亲密接触(二)
- Solaris第一次亲密接触
- 与Tiles框架的第一次亲密接触
- 第一次与猎头“亲密接触”
- 秒杀多线程第二篇 多线程第一次亲密接触
- OpenEIM 第一次接触和使用Sqlite
- 秒杀多线程第二篇 多线程第一次亲密接触 CreateThread与_beginthreadex本质区别(续)
- 第一次接触blog
- 百度地图API的第一次接触——自定义控件
- 与MongoDB的第一次亲密接触
- 菜鸟的第一次接触linux第一次写博文