JVM堆老年代分配比例
老年代分配
-XX:NewRatio
设置老年代与新生代的比例
-XX:NewRatio=老年代/新生代
尽可能将对象,预留在新生代
减少老年代的GC次数
package com.bjsxt.base001;public class Test02 {public static void main(String[] args) {byte[] b = null;// 连续向系统申请10MB空间for (int i = 0; i < 10; i++) {b = new byte[1 * 1024 * 1024];}}
}
程序分析
每次分配1M,循环10次
总共需要分配10M空间
测试
参数配置
-Xms20m -Xmx20m -XX:SurvivorRatio=2 -XX:+PrintGCDetails -XX:+UseSerialGC
老年代,比例为2
新生代,为6M多
老年代,为13M多
老年代/新生代,为2/1
JVM堆老年代分配比例相关推荐
- JVM 新生代老年代与GC
Java堆可以分为新生代和老年代两个区,其中新生代又可以分为一个Eden区和两个Survivor区,两个Survivor区分别被命名为From和To以示区分,新生代和老年代的比例为1:2,它们共同组成 ...
- JVM新生代老年代GC分析
新生代 复制算法 新生代特点 GC频繁.不稳定 每次清理内存,清理的比较多 每次回收耗时非常短 比如,有100个对象 可能90个需要清理,只需要复制其中的10个,到另一个内存空间 老年代 标记压缩法 ...
- 1、虚拟机内存管理、运行时数据区、线程共享区、Java堆、新生代、老年代、Eden区域分配、方法区、线程独占区、虚拟机栈
1.Java虚拟机内存管理 1.1.运行时数据区[Runtime Data Area] 1.1.1.线程共享区 1.1.1.1.Java堆[heap] 1.1.1.1.1.新生代.老年代.Eden区域 ...
- jvm深入理解:内存分配与回收策略(优先在Eden分配、大对象直接进入老年代、长期存活的对象将进入老年代、动态对象年龄判定、空间分配担保)
出入:深入理解Java虚拟机:JVM高级特性与最佳实践(第3版) Java技术体系的自动内存管理,最根本的目标是自动化地解决两个问题:自动给对象分配内存以及自动回收分配给对象的内存. 象的内存分配,从 ...
- JVM笔记-13运行时数据区-堆(OOM、年轻代老年代)
学习JVM的一点简单笔记,宋红康老师jvm讲的很好,感谢. 尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) OOM 异常是什么? 堆空间溢出,存放数据大于堆空间大小. packa ...
- Java架构学习(十二)java内存结构新生代老年代JVM参数调优堆内存参数配置解决堆栈溢出
JVM参数调优与垃圾回收机制 一.java内存结构 Java内存模型:是多线程里面的,jmm与线程可见性有关 Java内存结构:是JVM虚拟机存储空间. Java内存结构图 Java内存机构分为:方法 ...
- jvm对象从新生代到老年代_JVM内存管理、JVM垃圾回收机制、新生代、老年代以及永久代...
内存模型 JVM运行时数据区由程序计数器.堆.虚拟机栈.本地方法栈.方法区部分组成,结构图如下所示. JVM内存结构由程序计数器.堆.栈.本地方法栈.方法区等部分组成,结构图如下所示: 1)程序计数器 ...
- JVM内存中的年轻代,老年代
引言 对于大多数Java应用来说,Java Heap(Java堆)是JVM管理的内存中较大的一块,而且Java Heap是被所有线程共享的一块内存区域,于虚拟机启动时创建. 而Java堆的唯一目的就是 ...
- 大话Java堆的分区Eden、From Survivor、To Survivor、老年代
Java虚拟机运行时数据区一般分为:程序计数器.Java虚拟机栈.本地方法栈.Java堆.方法区. 在<Java虚拟机规范>中对Java堆是这样描述的:"所有的对象实例以及数组都 ...
最新文章
- 国内少儿眼中的编程:“Coding即是代码”?
- 最大流学习笔记(1)
- Oracle Sql技巧 - Upsert, Multitable Insert, Undrop
- Java基础day24
- Hive hiveserver2 配置运行
- JSON.parse使用 之 Unexpected token o in JSON at position 1 报错原因
- 操作系统(八)进程管理——进程同步
- 系统调用----sandir
- flask-sqlalchemy Multiple Databases
- VB.NET工作笔记004---查看电脑已经安装了哪些COM组件,可以用个OleViewer.zip
- 【转】一分钟读懂互联网广告竞价策略GFP+GSP+VCG
- C语言第五次作业--数据类型
- linux卸载jdk权限不够,linux中卸载jdk,一个简单有关问题整了一上午
- Tools_Procexp找文件被哪个进程占用
- Error: Network Error
- 深度学习教程(15) | 自然语言处理与词嵌入(吴恩达·完整版)
- 页面布局中遇到菱形图片时的处理办法
- GIC spec之ITS和LPI中断1
- 基于Android平台的监控端和被监控端系统
- 记canvas画笔笔迹的多次优化过程
热门文章
- Sersync实现触发式文件同步
- python读取文件的常用方法
- [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法
- 设计新Xlator扩展GlusterFS[转]
- phpStorm打开提示 failed to create JVM 的解决的方法
- android双击返回键退出程序的实现
- OpenCV基本步骤(初步学习)
- Google App Engine平台下JDOQL查询报异常的问题解决方案
- 下载:Visual Studio 2012 RC候选版
- paho.mqtt.embedded-c-master c语言版本架构