
JVM
文章平均质量分 73
奋斗永不止步
这个作者很懒,什么都没留下…
展开
-
jmap、jstat、jinfo、jstack命令详解
jmap jmap -histo [pid] > ./log.txt 此命令可以用来查看内存信息,实例个数以及占用内存大小 num:序号 instances:实例数量 bytes:占用空间大小 class name:类名称,[C is a char[],[S is a short[],[I is a int[],[B is a byte[],[[I is a int[][] jmap -heap [pid] jmap -dump:format=b,fil原创 2022-01-14 14:56:44 · 2496 阅读 · 0 评论 -
JVM G1垃圾回收器
G1收集器简介(-XX:+UseG1GC) G1 (Garbage-First)是一款面向服务器的垃圾收集器,主要针对配备多颗处理器及大容量内存的机器. 以极高概率满足GC 停顿时间要求的同时,还具备高吞吐量性能特征. G1将Java堆划分为多个大小相等的独立区域(Region),JVM最多可以有2048个Region。 一般Region大小等于堆大小除以2048,比如堆大小为4096M,则Region大小为2M,当然也可以用参数"XX:G1HeapRegionSize"手动指定Region大小,但是推荐原创 2021-09-05 21:40:37 · 698 阅读 · 0 评论 -
JVM垃圾回收机制详解
JVM垃圾回收机制详解一、引用计数法二、可达性分析算法1、常见引用类型三、垃圾收集算法1、标记-复制算法2、标记-清除算法3、标记-整理算法4、分代收集理论5、三色标记 对象内存回收 堆中几乎放着所有的对象实例,对堆垃圾回收前的第一步就是要判断哪些对象已经死亡(即不能再被任何途径使用的对象)。 一、引用计数法 给对象中添加一个引用计数器,每当有一个地方引用它,计数器就加1;当引用失效,计数器就减1;任何时候计数器为0 的对象就是不可能再被使用的。 这个方法实现简单,效率高,但是目前主流的虚拟机中并没有选择这原创 2021-08-24 17:20:41 · 465 阅读 · 0 评论 -
JVM内存模型详解
JVM内存模型一、JVM整体结构及内存模型二、JVM内存参数设置三、对象创建的主要流程:四、指针压缩五、对象栈上分配六、对象在Eden区分配七、对象进入老年代 一、JVM整体结构及内存模型 二、JVM内存参数设置 -Xss:每个线程的栈大小 -Xms:设置堆的初始可用大小,默认物理内存的1/64 -Xmx:设置堆的最大可用大小,默认物理内存的1/4 -Xmn:新生代大小 -XX:NewRatio:默认2表示新生代占年老代的1/2,占整个堆内存的1/3。 -XX:SurvivorRatio:默认8表示一个原创 2021-08-16 14:38:13 · 899 阅读 · 0 评论