前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JVM系列第13讲:JVM参数之追踪类信息

JVM系列第13讲:JVM参数之追踪类信息

作者头像
陈树义
发布2018-12-25 15:02:58
7760
发布2018-12-25 15:02:58
举报
文章被收录于专栏:陈树义陈树义

我们都知道 JVM 在启动的时候会去加载类信息,那么我们怎么得知他加载了哪些类,又卸载了哪些类呢?我们这一节就来介绍四个 JVM 参数,使用它们我们就可以清晰地知道 JVM 的类加载信息。

为了方便演示,我们使用下面的程序作为本次的演示程序。

代码语言:javascript
复制
/**
 * @author chenshuyi
 * @date 2018.09.30
 */
public class ClassLoadDemo {
    public static void main(String[] args) {
        String name = "chenshuyi";
        System.out.println("Hello, I'm " + name);
    }
}

跟踪类的加载和卸载 -verbose:class

我们使用下面的参数运行程序:

代码语言:javascript
复制
java -verbose:class com.chenshuyi.ClassLoadDemo > class_load_info.txt

之后我们打开 class_load_info.txt 文件。因为该文件太大,所以我们节选一部分:

代码语言:javascript
复制
...省略...
[Loaded java.util.ArrayList from /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/rt.jar]
...省略...
[Loaded java.util.HashMap from /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre/lib/rt.jar]
...省略...    
[Loaded com.chenshuyi.ClassLoadDemo from file:/Users/yurongchan/Yosemite/Code/practice/target/classes/]
...省略...    

从上面可以看到 JVM 分别加载了 ArrayList、HashMap 类,以及我们自己定义的 ClassLoadDemo 类。

跟踪类的加载 -XX:+TraceClassLoading

该参数与可以显示类的加载信息,输出的结果和 -verbose:class 一样,但比起它少了类的卸载信息。

跟踪类的卸载 -XX:+TraceClassUnloading

该参数与可以显示类的加载信息,输出的结果和 -verbose:class 一样,但比起它少了类的加载信息。

但实际上我们通过上面这个简单的例子,没有发现类的卸载信息,或许是例子太简单了,所以没有这个。

-XX:+PrintClassHistogram

该参数表示遇到 Ctrl-Break 后打印类实例的柱状信息,与 jmap -histo 功能相同。

了解了这些参数,能够让我们更好地了解哪些类已经被加载到 JVM 中,从而更好地排查问题。最后来个总结,加强记忆:

参数

含义

-verbose:class

跟踪类的加载和卸载

-XX:+TraceClassLoading

跟踪类的加载

-XX:+TraceClassUnloading

跟踪类的卸载

-XX:+PrintClassHistogram

显示类信息柱状图

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-12-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 跟踪类的加载和卸载 -verbose:class
  • 跟踪类的加载 -XX:+TraceClassLoading
  • 跟踪类的卸载 -XX:+TraceClassUnloading
  • -XX:+PrintClassHistogram
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档