zoukankan      html  css  js  c++  java
  • jvm学习小结

    1、 JDK、JRE、JVM之间的关系。JDK包含JRE和其它开发工具库如编译器、调试期,jConsele性能检测工具等
    2、 JVM的构成:类装载器子系统、执行引擎、运行时数据区,如下图:
     
    3、 JVM规范中运行时数据区组成:
    (1) 方法区:存储元数据如类信息、静态变量、常量池,线程共用
    (2) 堆:存储对象实例、数组等数据,线程共用
    (3) Pc寄存器,线程私有
    (4) Jvm方法栈,线程私有
    (5) 本地方法栈,线程私有
    Java 虚拟机hotspot实现时jvm方法栈和本地方法栈合并,方法区又称为持久代。
    4、 垃圾回收算法:分代垃圾回收,新生代对象生存周期短采用基于复制算法实现,老年代生存周期长,采用基于标记清理或标记整理方法实现。
    5、JVM性能调优:最关键参数:-Xms、 -Xmx 、-Xmn 、-XX:SurvivorRatio、-XX:MaxTenuringThreshold、-XX:PermSize、-XX:MaxPermSize
    -Xms、 -Xmx 通常设置为相同的值,避免运行时要不断扩展JVM内存,这个值决定了JVM heap所能使用的最大内存。
    -Xmn 决定了新生代空间的大小,新生代Eden、S0、S1三个区域的比率可以通过-XX:SurvivorRatio来控制(假如值为 4 表示:Eden:S0:S1 = 4:3:3 )
    -XX:MaxTenuringThreshold 控制对象在经过多少次minor GC之后进入老年代,此参数只有在Serial 串行GC时有效。
    -XX:PermSize、-XX:MaxPermSize 用来控制方法区的大小,通常设置为相同的值。
  • 相关阅读:
    即将到来的Android N,将具备这些新特性
    刚挣钱的程序猿同学该怎样花钱?
    Swift函数
    MVC
    css3硬件加速
    node+mongoDB+express项目需求解释
    柯里化
    web安全
    缓存机制详解
    nodejs --- crypto实现加密(转)
  • 原文地址:https://www.cnblogs.com/doit8791/p/3954290.html
Copyright © 2011-2022 走看看