JVM常用指令实战(值得收藏即用即查)

本文详述了JVM的几个核心指令,包括jps、jinfo、jstat、jstack、jmap和jhat的介绍、参数解析及实战案例,帮助读者深入理解JVM的运行状态和性能分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

本文我们来学习下JVM中的一些常用的指令。

jps

介绍

jps 是(java process Status Tool), Java版的ps命令,查看java进程及其相关的信息,如果你想找到一个java进程的pid,那可以用jps命令替代linux中的ps命令了,简单而方便。

命令格式:

jps [options] [hostid]

options参数解释:

  • -l : 显示进程id,显示主类全名或jar路径
  • -q : 显示进程id
  • -m : 显示进程id, 显示JVM启动时传递给main()的参数
  • -v : 显示进程id,显示JVM启动时显示指定的JVM参数

hostid : 主机或其他服务器ip

最常用示例:

jps -l 输出jar包路径,类全名
jps -m 输出main参数
jps -v 输出JVM参数

实战

package com.example.test;

/**
 * jps -q 显示进程id
 * jps -l 输出jar包路径,类全名
 * jps -m 输出主类名,及传入main方法的参数
 * jps -v 输出主类名,及输出JVM参数
 */
public class Demo_jps {
   
   
    public static void main(String[] args) {
   
   
        System.out.println("jps指令");
        try {
   
   
            Thread.sleep(200000);
        } catch (InterruptedException e) {
   
   
            e.printStackTrace();
        }
    }
}

jps -l命令 :

image-20210801073517437

jps -v命令

先设置堆的空间大小:

image-20210801073559372

执行:

image-20210801073705288

jps -m命令

先设置main方法参数:

image-20210801073751596

执行:

image-20210801073831159

jinfo

介绍

jinfo是用来查看JVM参数和动态修改部分JVM参数的命令

命令格式:

jinfo [option]

其中pid是进程号,由jps指令查看得到。

options参数解释:

  • no options 输出所有的系统属性和参数
  • -flag 打印指定名称的参数
  • -flag [+|-] 打开或关闭参数
  • -flag = 设置参数
  • -flags 打印所有参数
  • -sysprops 打印系统配置

实战

package com.example.test;

/**
 jinfo [option]  <pid>
    options参数解释:
 - no options 输出所有的系统属性和参数
 - -flag <name> 打印指定名称的参数
 - -flag [+|-]<name> 打开或关闭参数
 - -flag <name>=<value> 设置参数
 - -flags 打印所有参数
 - -sysprops 打印系统配置
 *
 */
public class Demo_jinfo {
   
   
    public static void main(String[] args) {
   
   
        System.out.println("jinfo指令");
        try {
   
   
            Thread.sleep(200000);
        } catch (InterruptedException e) {
   
   
            e.printStackTrace();
        }
    }
}

通过jps查看得到进程号为11666。

查看JVM参数和系统配置:

jinfo 11666
jinfo -flags 11666
jinfo -sysprops 11666

查看打印GC日志参数:

jinfo -flag PrintGC 11666
jinfo -flag PrintGCDetails 11666

打开GC日志参数:

jinfo -flag +PrintGC 11666
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员资料站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值