`
BabyDuncan
  • 浏览: 585802 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JVM的五个比较有用的命令

 
阅读更多

1.DisableExplicitGC

手动调用System.gc() 是一个危险的操作。

使用-XX:+DisableExplicitGC标志自动将System.gc()调用转换成一个空操作,为您提供运行代码的机会。

 

2.HeapDumpOnOutOfMemoryError

-XX:+HeapDumpOnOutOfMemoryError可以完成在JVM消亡之际捕获堆的一个快照,并可以根据-XX:HeapDumpPath标志指定到保存文件的实际路径,这样就可以分析jvm出现OutOfMemory情况的时候出现的问题以及原因了。

 

3.bootclasspath

-Xbootclasspath使您可以设置完整的引导类路径(这通常包括一个对rt.jar的引用),以及一些其他JDK附带的(不是rt.jar的一部分)JAR文件。

 

4.verbose

对于虚拟的或任何类型的Java应用程序,-verbose是一个很有用的一级诊断使用程序。该标志有三个子标志:gc、class和jni。

5.Command-line-X

运行命令行参数-X,列出JVM提供的所有非标准(但大部分都是安全的)参数

 java -X
   -Xmixed           mixed mode execution (default)
   -Xint             interpreted mode execution only
   -Xbootclasspath:<directories and zip/jar files separated by ;>
                     set search path for bootstrap classes and resources
   -Xbootclasspath/a:<directories and zip/jar files separated by ;>
                     append to end of bootstrap class path
   -Xbootclasspath/p:<directories and zip/jar files separated by ;>
                     prepend in front of bootstrap class path
   -Xnoclassgc       disable class garbage collection
   -Xincgc           enable incremental garbage collection
   -Xloggc:<file>    log GC status to a file with time stamps
   -Xbatch           disable background compilation
   -Xms<size>        set initial Java heap size
   -Xmx<size>        set maximum Java heap size
   -Xss<size>        set java thread stack size
   -Xprof            output cpu profiling data
   -Xfuture          enable strictest checks, anticipating future default
   -Xrs              reduce use of OS signals by Java/VM (see documentation
   -Xcheck:jni       perform additional checks for JNI functions
   -Xshare:off       do not attempt to use shared class data
   -Xshare:auto      use shared class data if possible (default)
   -Xshare:on        require using shared class data, otherwise fail.

the -X options are non-standard and subject to change without notice.

 

 

分享到:
评论

相关推荐

    jvm常用命令工具

    本篇文章将详细介绍以下几个核心的JVM命令工具及其使用方法: 1. **jps** - 显示系统中所有HotSpot虚拟机进程。 2. **jstat** - 收集HotSpot虚拟机各方面的运行数据。 3. **jstack** - 显示虚拟机的线程栈信息。 4....

    JVM指令手册详细完整版.pdf

    每个系列命令都有其特定的功能和用途,下面我们将逐一详细介绍每个系列命令的作用和用法。 一、未归类系列 未归类系列命令主要包括nop命令和aconst_null命令。nop命令的作用是啥都不做,而aconst_null命令的作用是...

    JAVA命令大全-JVM设置.rar

    4. **JVM诊断**:`jinfo`显示JVM配置信息,`jstack`打印线程堆栈跟踪,`jcmd`执行JVM命令,`jdiag`(在某些JDK版本中)提供诊断工具集合。 其次,`JVM设置收藏.txt`可能包含以下内容: 1. **JVM调优**:JVM调优...

    一个jvm启动多个springboot服务

    在Java世界中,JVM(Java虚拟机)是运行所有Java应用程序的基础,它为每个应用程序提供了一个独立的运行环境。Spring Boot是一个简化Spring应用开发的框架,它通过提供默认配置和starter项目,使得构建微服务变得...

    JVM调优工具命令详解.pdf

    上述知识和命令涵盖了JVM调优中不可或缺的几个重要方面,从内存分析到故障排查,再到性能监控。掌握这些工具和方法对于解决生产环境中的性能问题至关重要。熟练运用JVM调优工具可以为开发者提供一套强大的问题诊断和...

    JVM问题诊断常用命令

    通过上述介绍,我们可以了解到`jinfo`、`jmap` 和 `jstack` 这三个命令是JVM问题诊断中的重要工具。它们分别用于查看JVM配置信息、生成堆转储文件以及获取线程堆栈快照,是Java开发者和运维人员进行性能调优和故障...

    jvm详解,jvm内存结构,常用命令

    jvm详解

    JVM中文指令手册.pdf

    5. 操作数栈:JVM使用一个先进后出(FILO)的数据结构来存储局部变量和中间计算结果,这个结构就是操作数栈。所有指令都是基于操作数栈来执行的,例如,将值推送到栈上(push),从栈上弹出值(pop)等。 6. 参数与...

    深入JVM---JVM命令---invokespecial

    《深入JVM---JVM命令---invokespecial》 在Java虚拟机(JVM)的世界里,`invokespecial`指令扮演着至关重要的角色。它主要用于执行对象的构造方法(即`&lt;init&gt;`方法),以及调用私有方法和父类非静态方法。本文将...

    JVM监控实例数 windows监控 线程测试 单例模式下测试JVM实例是否一个

    如果你在多个地方调用这个方法,JVM只会创建一个`Singleton`对象,验证这一点可以通过检查`instance`变量是否只被初始化一次。 总的来说,理解和监控JVM的实例数以及线程状态是Java开发中的重要技能。通过`jps`和`...

    monkey老师的jvm 调优

    5. **线程调度与并发**:理解JVM如何调度线程,以及如何利用`-XX:PreBlockSpin`、`-XX:ThreadPriorityPolicy`等参数调整线程优先级和自旋策略,可以优化多线程环境下的性能。 6. **编译优化**:JVM的即时编译(JIT...

    JVM监控管理及故障诊断工具(常用命令)

    jstatd 命令将开启一个 RMI 服务器程序,提供了对 JVM 的创建和结束监视,也为远程监视工具提供了一个可以 attach 的接口。启动它之前需要首先为其制定安全策略,创建策略稳健,并命名为 jstatd.all.policy。 参数...

    10.JVM常见命令1

    在本文中,我们将介绍 10 个常见的 JVM 命令,包括 jps、jstat、jinfo、jmap 和 jstack 等。 jps 命令 jps 命令是 JVM 进程状态工具,用于显示指定系统内所有的 HotSpot 虚拟机的进程状态。它可以列出当前运行在...

    JVM入门实战/arthas实战/垃圾回收算法/垃圾回收器/jvm内存模型分析

    5、JVM零基础也能听懂。 第一节:学习JVM的意义和目标 1.1 意义: 1.2 目标: 第二节:JVM内存模型 1.1 概念 1.2 JVM内存模型 1.3 Heap堆内存模型 第三节:定位垃圾对象的依据 1.1 引用计数法 1.2 可达性算法 ...

    Java JVM Instruction Set

    Java虚拟机(JVM)具有一个独特的架构,它包括以下几个关键组件: ##### 寄存器 JVM使用一组寄存器来存储操作数和结果。每个线程都有自己的寄存器集合,这样可以确保多线程之间的隔离性。 ##### 内存区域 JVM...

    Jvm堆栈dump文件分析

    1. **获取dump文件**:当JVM出现问题时,通过JVM的命令行选项(如`-XX:+HeapDumpOnOutOfMemoryError`)或者使用如`jmap`命令生成heap dump文件。 2. **安装HeadAnalyzer**:解压`ha414.jar`文件,这是一个包含...

    jvm内存监控工具使用

    这对于识别正在运行的 Java 应用程序非常有用,尤其是当系统中有多个 Java 进程时,jps 能够清晰地展示出每个进程的基本信息。 #### jstat:JVM 内存状态分析器 jstat 是一个用于监视 JVM 内存使用情况的强大工具...

    java基础之JVM

    JVM主要由以下四个关键组件构成: 1. **类的加载机制**:这是JVM的基础,负责加载Java类,并准备执行这些类。类加载机制确保了类的正确加载,并管理类的生命周期。 2. **JVM内存结构**:主要包括堆、栈、方法区等,...

    JVM 内存分析

    JVM为应用程序提供了运行时环境,它包括堆内存、栈内存、方法区、程序计数器以及本地方法栈等几个主要区域。以下是对这些内存区域的详细说明: 1. **堆内存**:这是Java对象的主要存储区域,所有通过`new`关键字...

Global site tag (gtag.js) - Google Analytics