第四章:java虚拟机命令行工具

1:jps命令行进程状况工具      jps [options] [hostid]

C:\Users\lenovo>jps -l

13824 sun.tools.jps.Jps

14224 org.jetbrains.jps.cmdline.Launcher

8528 org.jetbrains.idea.maven.server.RemoteMavenServer

12660 org.jetbrains.jps.cmdline.Launcher

7316

11544

236 com.li.SpringBootLabApplication   //主类

2:jstat 用于监视虚拟机各种运行状态信息的命令行工具。包括类装载,内存,垃圾收集,JIT编译等数据

jstat [option vmid [interval [s|ms][count]]]

option 代表用户希望查询的虚拟机信息

例如每250毫秒查询一次进程236的垃圾回收信息,查询20次

3:jinfo 打印java配置信息

打印进程

jinfo 236的信息

C:\Users\lenovo>jinfo 236Attaching to process ID236, please wait...

Debugger attached successfully.

Server compiler detected.

JVM versionis 25.161-b12

Java System Properties:

java.runtime.name=Java(TM) SE Runtime Environment

java.vm.version= 25.161-b12

sun.boot.library.path= D:\software\jdk\jdk8\jdk1.8.0_161\jre\bin

java.vendor.url= http://java.oracle.com/

java.vm.vendor =Oracle Corporation

path.separator=;

file.encoding.pkg=sun.io

java.vm.name= Java HotSpot(TM) 64-Bit Server VM

sun.os.patch.level=sun.java.launcher=SUN_STANDARD

user.script=user.country=CN

user.dir=D:\software\github\github下载\laboratoryWeb

java.vm.specification.name=Java Virtual Machine Specification

PID= 236java.runtime.version= 1.8.0_161-b12

java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment

os.arch=amd64

java.endorsed.dirs= D:\software\jdk\jdk8\jdk1.8.0_161\jre\lib\endorsed

org.jboss.logging.provider=slf4j

line.separator=java.io.tmpdir=C:\Users\lenovo\AppData\Local\Temp\

java.vm.specification.vendor=Oracle Corporation

user.variant=os.name= Windows 10sun.jnu.encoding=GBK

java.library.path= D:\software\jdk\jdk8\jdk1.8.0_161\bin;C:\Users\lenovo\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm\5.0.3\dcc2193db20e19e1feca8b1240dbbc4e190824fa\asm-5.0.3.jar;D:\software\ideaj\ideaIC-2017.3.4.win\lib\idea_rt.jar

java.vm.specification.version= 1.8sun.arch.data.model= 64sun.java.command=com.li.SpringBootLabApplication

java.home= D:\software\jdk\jdk8\jdk1.8.0_161\jre

user.language=zh

java.specification.vendor=Oracle Corporation

awt.toolkit=sun.awt.windows.WToolkit

java.vm.info=mixed mode

java.version= 1.8.0_161

java.ext.dirs= D:\software\jdk\jdk8\jdk1.8.0_161\jre\lib\ext;C:\WINDOWS\Sun\Java\lib\ext

sun.boot.class.path = D:\software\jdk\jdk8\jdk1.8.0_161\jre\lib\resources.jar;D:\software\jdk\jdk8\jdk1.8.0_161\jre\classes

java.awt.headless= truejava.vendor=Oracle Corporation

catalina.base = C:\Users\lenovo\AppData\Local\Temp\tomcat.6690132104814217884.9002file.separator=\

java.vendor.url.bug= http://bugreport.sun.com/bugreport/

sun.io.unicode.encoding =UnicodeLittle

sun.cpu.endian=little

sun.desktop=windows

sun.cpu.isalist=amd64

VM Flags:

Non-default VM flags: -XX:CICompilerCount=3 -XX:InitialHeapSize=134217728 -XX:MaxHeapSize=2122317824 -XX:MaxNewSize=707264512 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=44564480 -XX:OldSize=89653248 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseFastUnorderedTimeStamps -XX:-UseLargePagesIndividualAllocation -XX:+UseParallelGC

Command line:-javaagent:D:\software\ideaj\ideaIC-2017.3.4.win\lib\idea_rt.jar=50372:D:\software\ideaj\ideaIC-2017.3.4.win\bin -Dfile.encoding=UTF-8

4:jmap: java内存映像工具

例如显示 java堆详细信息

jmap -heap 236

C:\Users\lenovo>jmap -heap 236Attaching to process ID236, please wait...

Debugger attached successfully.

Server compiler detected.

JVM versionis 25.161-b12using thread-local objectallocation.

Parallel GC with4thread(s)

Heap Configuration:

MinHeapFreeRatio= 0MaxHeapFreeRatio= 100MaxHeapSize= 2122317824 (2024.0MB)

NewSize= 44564480 (42.5MB)

MaxNewSize= 707264512 (674.5MB)

OldSize= 89653248 (85.5MB)

NewRatio= 2SurvivorRatio= 8MetaspaceSize= 21807104 (20.796875MB)

CompressedClassSpaceSize= 1073741824 (1024.0MB)

MaxMetaspaceSize= 17592186044415MB

G1HeapRegionSize= 0 (0.0MB)

Heap Usage:

PS Young Generation

Eden Space:

capacity= 195035136 (186.0MB)

used= 71367536 (68.06138610839844MB)

free= 123667600 (117.93861389160156MB)36.592143069031415%used

From Space:

capacity= 17825792 (17.0MB)

used= 17497968 (16.687362670898438MB)

free= 327824 (0.3126373291015625MB)98.16095688763787%used

To Space:

capacity= 14155776 (13.5MB)

used= 0 (0.0MB)

free= 14155776 (13.5MB)0.0%used

PS Old Generation

capacity= 112197632 (107.0MB)

used= 23719728 (22.620895385742188MB)

free= 88477904 (84.37910461425781MB)21.1410237249927%used24236 interned Strings occupying 2896624bytes.

C:\Users\lenovo>

5:jhat   虚拟机堆转储快照分析工具

6:jstack:    java堆栈跟踪工具

7: hsdis  JIT生成代码反汇编

可视化工具:

通过jdk/bin目录下的  jconsole.exe启动jconsole,将搜索出所有本地运行的虚拟机进程。

选择一个进程进行监控: 可查看各个状态的信息

java.vm.info_深入理解java虚拟机相关推荐

  1. 【转】java提高篇(二)-----理解java的三大特性之继承

    [转]java提高篇(二)-----理解java的三大特性之继承 原文地址:http://www.cnblogs.com/chenssy/p/3354884.html 在<Think in ja ...

  2. 深圳java培训:怎样理解 Java 注解和运用注解编程?

    深圳java培训:怎样理解 Java 注解和运用注解编程? 注解和使用 先来看下概念首先从注释来看: 注释:给代码添加说明和解释,注释帮助开发人员理解程序.(Comment)说白点就是注释是给人看的. ...

  3. 如何理解java反射_怎么理解java反射

    怎么理解java反射? 概述 Java 反射是可以让我们在运行时获取类的方法.属性.父类.接口等类的内部信息的机制.也就是说,反射本质上是一个"反着来"的过程.我们通过new创建一 ...

  4. Java继承_深入理解Java继承、封装、多态的实现原理

    点击关注上方"Java技术江湖",设为"置顶或星标",第一时间送达技术干货. 作者:黄小斜 文章来源:微信公众号[Java技术江湖] 目录 从JVM结构开始谈多 ...

  5. [牛感悟系列]JAVA(1)理解JAVA垃圾回收

    理解JAVA垃圾回收的好处是什么?满足求知欲是一方面,编写更好的JAVA应用是另外一方面. 如果一个人对垃圾回收过程感兴趣,那表明他在应用程序开发领域有相当程度的经验.如果一个人在思考如何选择正确的垃 ...

  6. java 注解_怎样理解 Java 注解和运用注解编程?

    怎样理解 Java 注解和运用注解编程? 注解和使用 先来看下概念首先从注释来看: 注释:给代码添加说明和解释,注释帮助开发人员理解程序.(Comment)说白点就是注释是给人看的. 注解:给代码添加 ...

  7. java 类 null_深入理解java中的null“类型”

    本文研究的主要是java中的null"类型"的相关实例,具体介绍如下. 先给出一道简单的null相关的题目,引发我们对null的探讨,后面会根据官方语言手册对null"类 ...

  8. java提高篇四_(转)java提高篇(四)-----理解java的三大特性之多态

    面向对象编程有三大特性:封装.继承.多态. 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据.对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法. 继承 ...

  9. java的foreach_深入理解java中for和foreach循环

    •for循环中的循环条件中的变量只求一次值!具体看最后的图片 •foreach语句是java5新增,在遍历数组.集合的时候,foreach拥有不错的性能. •foreach是for语句的简化,但是fo ...

最新文章

  1. C:模块化程序设计 以及数组
  2. 开启报名丨中文信息学会青工委学术沙龙:“推荐系统前沿进展”
  3. 求助 windows server2008密码策略修改
  4. Android启动过程以及各个镜像的关系
  5. php fpm 三个模式_php-fpm运行原理和模式的简单介绍
  6. Web API应用架构设计分析(2)
  7. Fedora gedit 打开txt文件乱码的解决
  8. Vjios P1736 铺地毯【暴力,思维】
  9. JHelpers——一个善良忠实的仆人
  10. 拓端tecdat|Python在线零售数据关联规则挖掘Apriori算法数据可视化
  11. js之数组去重的方法
  12. 【FPGA入门一】一个简单的LED流水灯
  13. 详谈软件工程之软件开发方法
  14. [半监督学习] ReMixMatch: Semi-Supervised Learning with Distribution Alignment and Augmentation Anchoring
  15. 因计算机中丢失msvcr120.dll,msvcr120.dll丢失怎样修复 附解决方法
  16. cpe linux -无线 -ap,CPE 是啥?Wi-Fi 6+ 牛在哪儿?一文看懂华为移动路由发展史
  17. ida 动态调试so库 (连接夜神模拟器)
  18. M - Maratona Brasileira de Popcorn(SDUT 2019 Autumn Team Contest 6th)
  19. Python 20行简单实现有道在线翻译
  20. git把另一个盘的代码上传_Git内部原理揭秘!从文件更改到代码储存,Git究竟是怎么实现的...

热门文章

  1. 采访与书评 —— 《BDD In Action》
  2. Date String转换
  3. contains与compareDocumentPosition方法详解
  4. windows 报错 没有文件扩展.vbs的脚本引擎 解决方法
  5. linux shell mv/cp 错误: will not overwrite just-created <filename> with <sameFilename> 解决方法
  6. python 错误 SSLError: [SSL: SSLV3_ALERT_BAD_RECORD_MAC] sslv3 alert bad record mac (_ssl.c:1864) 解决方法
  7. python subprocess.Popen 使用简介
  8. cve-2018-2628 Weblogic反序列化漏洞实现反弹shell
  9. linux 内核 netfilter 网络过滤模块 (5)-iptables
  10. window cmd 端口查进程