图灵-jvm第二次课_第1页
图灵-jvm第二次课_第2页
图灵-jvm第二次课_第3页
图灵-jvm第二次课_第4页
图灵-jvm第二次课_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、JVM图灵学院张飞2017-11课程安排u JVM Trace跟踪参数u JVM 内存分配参数详解u JVM 内存参数案例讲解u JVM 内存回收u GC重点掌握u 内存分配情况跟踪u 堆内存各种设置情况u 内存回收算法及原理u 常用GC特点及场景Trace跟踪参数u -verbose:gcu 打印GC日志信息u -XX:+PrintGCDetailsu 打印GC日志信息u -Xlog :/gc.logu GC日志目录u -XX:+PrintHeapAtGCu 每次一次GC后,都打印堆信息u -XX:+TraceClassLoadingu 类加载信息Heap内存分配参数u -Xmxu 最大堆u

2、 Xmsu 最小堆u Heap Memory 是如何分配的?u 案例Heap内存分配参数u -Xmnu 新生代大小 (eden+2s)u XX:NewRatiou 年轻代(eden+2s):老年代u XX:SurvivorRatiou 2s:edenu 案例及GC变化Stack内存分配参数u -Xssu 决定方法调用的深度u 没个线程独有栈空间u 参数,局部变量分配在栈上u 一般几百K就够了,64位jvm默认1Mu 对栈深度的影响JVM内存回收u 标记-清除算法u 复制算法u 标记-整理算法u 分代收集算法标记-清除算法u 标记阶段u 标记存活对象u 清除阶段u 统一回收所有未标记的对象u 缺

3、点u 会产生内存碎片u 如果空间内存碎片太多,当程序产生大对象无法在堆中找到连续空间大小存放的时候,会强制发生GCs复制算法u 原理u 内存一分为二,每次只使用其中一块,当一块内存没有连续空间存储对象的时候,会把存活下来的对象复制到另外一块内存中, 然后一次性清除之前的哪块空间u 优缺点Eden幸存区原理是这样的Eden实际可以这样复制算法u 没有内存碎片问题u 代价就是讲内存减少了一半,空间利用率不高u 不适用于存活对象较多的场景,比如老年代u 而实际上我们并不需要按照1:1的比例来划分,因为大部分对象从创建到结束这个生命周期很短u HotSpot虚拟机默认Eden:Survivor=8:1

4、标记-整理算法u 原理u 标记存活对象,然后把存活对象向一端移动u 清理掉存活对象这端以外的所有空间存活存活存活存活存活存活存活存活u 优缺点标记-整理算法u 适合用于存活对象较多的场合,如老年代u 解决了空间碎片和效率问题:u 将所有的存活对象压缩到内存的一端,然后清理边界外所有的空间分代收集算法u 分代思想u 堆划分为新生代和老年代u 新生代中,能够存活的对象很少,可以使用复制算法u 老年代中,对象存活率高,而且没有额外的空间用来做老年代的担保,可以使用标记清除或者标记整理算法垃圾收集器-GCu Serial新生代串行收集器 新(复制算法),老(标记整理)u ParNew 新生代并行收集器u Parallel Scavenge 新生代并行收集器u 目标:尽可能缩GC时用户线程的停顿时间u 在注重吞吐量或CPU资源敏感的场合,可以优先考虑Parallel Scavenge收集器 + Parallel Old收集器u Serial Old 老年代串行收集器u Parallel Old 老年代并行收集器u CMS 真正意义上的并发收集器(老年代收集器)u 目标:最短的GC停顿时间u G1分代收集GC组合新生代CMSParallel oldSerial oldParallel ScavengeParNewSerial老年代扩展并发:用户线程和GC线程可以同

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论