jcmd

作者: 二月夜 | 来源:发表于2017-11-28 13:18 被阅读0次

    jcmd

      发送诊断命令请求到正在运行的Java虚拟机(JVM)。它必须和JVM运行在同一台机器上,并且与启动JVM用户具有相同的组权限。

    • 用法
      1. 列出当前所有运行的 java 进程:jcmd -l|<none>
      2. 列出当前运行的 java 进程可以执行的操作:jcmd PID help
    jcmd 664 help
    664:
    The following commands are available:
    JFR.stop
    JFR.start
    JFR.dump
    JFR.check
    VM.native_memory
    VM.check_commercial_features
    VM.unlock_commercial_features
    ManagementAgent.stop
    ManagementAgent.start_local
    ManagementAgent.start
    GC.rotate_log
    Thread.print
    GC.class_stats
    GC.class_histogram
    GC.heap_dump
    GC.run_finalization
    GC.run
    VM.uptime
    VM.flags
    VM.system_properties
    VM.command_line
    
    1. 参数含义
    命令 描述
    jcmd PID VM.uptime 查看 JVM 的启动时长
    jcmd PID GC.class_histogram 查看 JVM 的类信息,这个可以查看每个类的实例数量和占用空间大小。
    jcmd PID Thread.print 查看 JVM 的Thread Dump
    jcmd PID GC.heap_dump FILE_NAME 查看 JVM 的Heap Dump,注意,如果只指定文件名,默认会生成在启动 JVM 的目录里。
    jcmd PID VM.system_properties 查看 JVM 的属性信息
    jcmd PID VM.flags 查看 JVM 的启动参数,注意,可以看到 -X 和 -XX 的参数信息
    jcmd PID VM.command_line 查看 JVM 的启动命令行
    jcmd PID GC.run_finalization 对 JVM 执行 java.lang.System.runFinalization(),尽量b别去调用这个对象的finalize方法。
    jcmd PID GC.run 对 JVM 执行 java.lang.System.gc(),告诉垃圾收集器打算进行垃圾收集,而垃圾收集器进不进行收集是不确定的
    jcmd PID PerfCounter.print 查看 JVM 的性能

    相关文章

      网友评论

          本文标题:jcmd

          本文链接:https://www.haomeiwen.com/subject/sfgsbxtx.html