JDK的一些命令行工具

  1. jps:虚拟机进程状况工具
    jps(JVM Process Status Tool)可以列出正在运行的虚拟机进程,并显示虚拟机执行主类(Main Class,main()函数躲在的类)的名称,以及这些进程的本地虚拟机的唯一ID(LVMID Local Virtual Machine Identifier)。对于本地虚拟机进程来说,LVMID与操作系统的进程ID(PID Process Identifier)是一致的。

  2. jstat:虚拟机统计信息监视工具
    jstat(JVM Statistics Monitoring Tool)是用于监视虚拟机各种运行状态信息的命令行工具。它可以显示本地或远程虚拟机进程中的类装载、内存、垃圾回收、JIT编译等运行数据。

  3. jinfo:Java配置信息工具
    jinfo(Configuration Info for Java)的作用是实时地查看和调整虚拟机的各项参数。使用jps命令的-v参数可以查看虚拟机启动时显式指定的参数列表,如果想知道未被显式指定的参数的系统默认值,可以使用jinfo的-flag选项进行查询。jinfo还可以使用-sysprops选项把虚拟机的System.getProperties()的内容打印出来。

  4. jmap(Memory Map for Java)命令用于生成堆转储快照(一般称为heapdumphuodump文件)。如果不是用jmap命令,还可以使用-XX:+HeapDumpOnOutOfMemoryError参数,可以让虚拟机在OOM异常出现之后自动生成dump文件,通过-XX:+HeapDumpOnCtrlBreak参数则可以使用【Ctrl】+【Break】键让虚拟机生成dump文件,又或者在linux系统下通过kill -3命令发送进程退出信号给虚拟机,也能拿到dump文件。jmap还可以查询finalize执行队列,java堆和永久代的的详细信息,如空间使用率,当前用的是哪种收集器等

  5. jstack:Java堆栈跟踪工具
    jstack(Stack Trace for Java)命令用于生成虚拟机当前时刻的线程快照(一般称为threaddump或者javacore文件)。线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的集合,生成快照的主要目的是定位线程出现长时间停顿的原因,如线程间死锁、死循环、请求外部资源导致的长时间等待都是导致线程长时间挺度的常见原因。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值