jps    查看java进程的PID
java -XX:+PrintFlagsInitial    显示所有可设置参数及默认值
java -XX:+PrintFlagsFinal    获取到所有可设置参数及值(手动设置之后的值)
java -XX:+PrintCommandLineFlags    显示出JVM初始化完毕后所有跟最初的默认值不同的参数及它们的值
jmap -histo [pid]    查看java堆上的对象分布情况
java用法: java [-options] class [args...](执行类)或 java [-options] -jar jarfile [args...](执行 jar 文件)
譬如:java -cp . -Xmx3G -Xmn2G -server -XX:-TieredCompilation AppMain
[-options]
    -d32 使用 32 位数据模型 (如果可用)
    -d64 使用 64 位数据模型 (如果可用)
    -server 选择 "server" VM,默认 VM 是 server
    -cp <目录和 zip/jar 文件的类搜索路径>
    -classpath <目录和 zip/jar 文件的类搜索路径>,用 : 分隔的目录, JAR和 ZIP列表, 用于搜索类文件。
    -D<名称>=<值> 设置系统属性
    -verbose:[class|gc|jni] 启用详细输出
    -version 输出产品版本并退出
    -showversion 输出产品版本并继续
    -Xdiag 显示附加诊断消息
    -Xnoclassgc 禁用类垃圾收集
    -Xincgc 启用增量垃圾收集
    -Xloggc:<file> 将 GC 状态记录在文件中 (带时间戳)
    -Xbatch 禁用后台编译
    -Xms<size> 设置初始 Java 堆大小
    -Xmx<size> 设置最大 Java 堆大小
    -Xss<size> 设置 Java 线程堆栈大小
    -Xprof 输出 cpu 配置文件数据
    -XshowSettings 显示所有设置并继续
    -XshowSettings:all 显示所有设置并继续
    -XshowSettings:vm 显示所有与 vm 相关的设置并继续
    -XshowSettings:properties 显示所有属性设置并继续
    -XshowSettings:locale 显示所有与区域设置相关的设置并继续
    -XX:-UseBiasedLocking    关闭偏向锁默认会进入轻量级锁状态
    -XX:-DoEscapeAnalysis 关闭逃逸分析
    -XX:-TieredCompilation 关闭分层编译
    -XX:-BackgroundCompilation 关闭异步编译
    -XX:CompileThreshold 方法调用次数或循环次数达到这个阈值就会触发标准编译(client:1500,server:10000)
ps:

触发OSR编译的阈值计算(OSR编译就是只编译该循环代码不编译类的其他方法)
-XX:CompileThreshold = 10000
-XX:OnStackReplacePercentage = 140
-XX:InterpreterProfilePercentage = 33
OSR trigger = (CompileThreshold * (OnStackReplacePercentage - InterpreterProfilePercentage)) / 100 = 10700
JIT编译在默认情况是异步进行的,当触发某方法或某代码块的优化时,先将其放入编译队列,然后由编译线程进行编译,编译之后的代码放在CodeCache中,CodeCache的大小也是有限的,CompileThreshold设置的太低,JIT会将一大堆执行不那么频繁的代码进行编译,并放入CodeCache,导致之后真正执行频繁的代码没有足够的空间存放。

 
 
 
 
 
 
 
 
 
 
 
 
 
 

Java常用命令的更多相关文章

  1. Java常用命令与参数设置

    我介绍的JDK版本: 首先.介绍下JDK常用参数设置,如下是我个人环境的参数: -Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m 我们 ...

  2. java 常用命令工具

    1. jmap (1)分析堆信息 jmap -heap java_pid (2) 导出 java进程 5460 的堆内容 到文件 heap.map ,然后使用 jhat 分析 jmap -dump:l ...

  3. java常用命令行指令

    javac 将java源文件编译成class字节码文件 javac HelloWorld.java java (1)运行class文件 java HelloWorld 注意java命令后面不要加.cl ...

  4. Java常用命令行工具

    命令基于Sun JDK,用于监控和诊断HotSpot的java 虚拟机. 对应的可执行文件位于$JAVA_HOME/bin/下 jps-虚拟机进程状况工具 选项 作用 -q 只输出LVMID,同进程p ...

  5. Java学习4——java常用命令

    javac  file.java 编译Java文件,生成file.class(字节码) java  file   执行Java程序,不加后缀.class java  -version 查看Java版本 ...

  6. Java常用命令及参数

    Java的基本指令参数 javac [-d 目录|-verbose] file java [-classpath(cp) dir] file jar -zcvf dir file javap [-pr ...

  7. Java常用命令:jps、jstack、jmap、jstat(带有实例教程)

      版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u013310517/article/details/80990924 查看Java进程:jps ...

  8. java 常用命令

    #查看堆使用情况jmap -heap [pid]#查看占用内存高的对象jmap -histo:live [pid] | head -n 100#查看占用内存高的对象,dump成文件,线下分析jmap ...

  9. java常用命令行

    1.javac(编译java源文件) javac是用来编译.java文件的. 例子: package com.fjassa.domain;  public class Human.public cla ...

随机推荐

  1. sqlserver 动态行转列

    DECLARE @SQL VARCHAR(8000)SET @SQL = 'select overcode 'SELECT @SQL = @SQL + ' , max(case header when ...

  2. Myeclipse编写struts程序

    说到struts则必须要谈到MVC模式(Model2) 什么是MVC模式.随着应用系统的逐渐增大,系统的业务逻辑复杂度以几何级数方式增加,在这样的情况下,如果还是把所有的处理逻辑都放在JSP页面中,那 ...

  3. iOS应用架构谈(三):View层的组织和调用方案(下)

    iOS客户端应用架构看似简单,但实际上要考虑的事情不少.本文作者将以系列文章的形式来回答iOS应用架构中的种种问题,本文是其中的第二篇,主要讲View层的组织和调用方案.下篇主要讨论做View层架构的 ...

  4. C# 类中索引器的使用二

    索引器(Indexer)是C#引入的一个新型的类成员,它使得类中的对象可以像数组那样方便.直观的被引用.索引器非常类似于属性,但索引器可以有参数列表,且只能作用在实例对象上,而不能在类上直接作用.定义 ...

  5. Mysql undo与redo Log

    http://mysql.taobao.org/monthly/2015/04/01/ http://www.cnblogs.com/Bozh/archive/2013/03/18/2966494.h ...

  6. Java 解析XML的几种方法

    XML现在已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便. XML在不同的语言里解析方式都是一样的,只不过实现的语法不同而已. 基本的解析方式 ...

  7. AR , VR, GVR ...

    虚拟现实与增强现实(眼镜或头盔)的现状与未来-简介http://blog.csdn.net/yanzhanyi/article/details/41982033 Google VR  |  Googl ...

  8. android:id="@id/resid" , andorid:id="@+id/resid" 的区别

    的区别?android:id="@id/resid"    // 引用现有的资源idandorid:id="@+id/resid"  // 新增一个资源id i ...

  9. 【翻译十八】java-并发之锁对象

    Lock Objects Synchronized code relies on a simple kind of reentrant lock. This kind of lock is easy ...

  10. Snowflake Snow Snowflakes(哈希表的应用)

    Snowflake Snow Snowflakes Time Limit: 4000MS   Memory Limit: 65536K Total Submissions: 27312   Accep ...