理解Java虚拟机
whuruby
珞珈山下的理想,一分耕耘一分收获
展开
-
GC学习
GC概述 1.1 GC(Garbage Collection)是JVM的核心组件,它在JVM中以单独的线程(daemon thread)运行,作用于内存堆区域(Stack Space),扫描那些经过new关键字创建的无用的对象并清除以释放内存,必要时整理内存。 1.2 Stop-the-World:GC是一个“Stop-the-World”事件,当GC执行时,所有应用程序线程会临时停止运行。回原创 2017-07-10 22:47:05 · 272 阅读 · 0 评论 -
GC
1. GC概述 1.1 GC(Garbage Collection)是JVM的核心组件,它在JVM中以单独的线程(daemon thread)运行,作用于内存堆区域(Stack Space),扫描那些经过new关键字创建的无用的对象并清除以释放内存,必要时整理内存。 // 只作用于堆区域吗? 也会扫描方法区(永久代) // 只处理经过new关键字创建的对象吗? 也会处理无用常量和无用...原创 2018-07-29 17:18:35 · 198 阅读 · 0 评论 -
项目中用到的GC参数
(1)总体GC策略 = ParNew + CMS + Serial Old(后备预案)(2)后备预案:CMS期间GC和用户线程同时运作,会产生浮动垃圾,此时CMS预留空间(1-92%)不足时,GC失败,JVM启动临时GC收集器(3)CMS缺陷: CPU密集型,占用应用不低于25%CPU使用率 GC同时产生浮动垃圾,由于GC与用户线程并发运行,后者还在不停产生浮动垃圾...原创 2018-07-30 08:20:55 · 712 阅读 · 1 评论 -
JVM内存分区再熟悉
1.string.intern从常量池返回字符串常量或将字符串常量放入常量池中2.JVM内存分区虚拟机栈(栈大小/栈深度)、程序计数器、方法区、堆(分代)3.编写内存泄露代码vm options:-Xms10M -Xmx10M -Xmn5M -verbose:gc -XX:+PrintGCDetails -XX:SurvivorRatio=8 -XX:MetaspaceSize=8m...原创 2018-08-19 17:28:52 · 305 阅读 · 0 评论