
java虚拟机(JVM)
文章平均质量分 66
Oo此岸花开oO
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JVM——JVM性能调优
JVM性能调优的经验 整个堆大小=年轻代大小 + 年老代大小 + 持久代大小 -Xms : 最小可用内存 -Xmx : 最大可用内存 -Xmn(New Generation) : 年轻代大小 -XX:SurviorRatio=x : 设置年轻代中Eden区与Survivor区的大小比值,2:eden = x -XX:MaxTenuringThreshold : 控制对象在经历多少此转载 2016-03-27 20:59:11 · 462 阅读 · 0 评论 -
JVMGC——并发收集器(CMS)
CMS(Concurrent Mark Sweep)收集器 C : Concurrent M : 标记(marking)对象 :GC必须记住哪些对象可达,以便删除不可达的对象 S : 清除(sweeping) : 删除未标记的对象并释放它们的内存 CMS是一种以最短停顿时间为目标的收集器,使用CMS并不能达到GC效率最高,但它尽可能降低GC时服务的停顿时间。 使用标记转载 2016-03-27 19:28:11 · 6672 阅读 · 1 评论 -
JVMGC——堆内存的分代
分代的垃圾回收策略 基于对对象声明周期分析后得出的垃圾回收算法。 把对象分为年青代、年老代和持久代,对不同声明周期的对象使用不同的算法 年轻代: 一个Eden区,两个Survior区 ,使用复制回收算法 所有新生成的对象首先都是放置在年轻代(Eden区)的 年轻代的目标就是尽可能快速地收集掉那些生命周期短的对象 年轻代回收过程: 1. 当Eden区满时,转载 2016-03-27 18:49:41 · 557 阅读 · 0 评论 -
JMM——运行时数据区
Java虚拟机运行时数据区 1 程序计数器(Program Counter Register) 1.1 程序计数器是一块较小的线程私有的内存空间,可以看作是当前线程锁执行的字节码的行号指示器。 1.2 如果线程正在执行的是一个Java方法,记录的是正在执行的虚拟机字节码指令的地址 1.3 如果执行的是Native方法,计数器值为空(Undefined原创 2016-03-27 16:23:42 · 643 阅读 · 0 评论 -
JVMGC——基本垃圾回收算法
按照基本回收策略分: 1. 引用计数 原理是此对象有一个引用就增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只回收计数为0的对象。 缺点:无法处理循环引用的问题 2. 标记-清除 此算法执行分两阶段: 1. 从引用根节点开始标记所有被引用的对象 2. 遍历整个堆,把未标记的对象清除。 缺点:此算法需要暂停整个应用,会产生内存碎片原创 2016-03-27 16:46:32 · 557 阅读 · 0 评论