🌈hello,你好鸭,我是Ethan,西安电子科技大学大三在读,很高兴你能来阅读。
✔️目前博客主要更新Java系列、项目案例、计算机必学四件套等。
🏃人生之义,在于追求,不在成败,勤通大道。加油呀!
🔥个人主页:Ethan Yankang
🔥推荐:史上最强八股文||一分钟看完我的几百篇博客
🔥温馨提示:划到文末发现专栏彩蛋 点击这里直接传送
🔥本篇概览:详细讲解了新生代与老年代划分区域实战。🌈⭕🔥
【计算机领域一切迷惑的源头都是基本概念的模糊,算法除外】
🌈章节引出:
前一篇章:《剑指JVM》——第7章——堆内存溢出实验——堆3——运行时数据区篇15-CSDN博客
🌈章节速览:
新生代与老年代
存储在JVM 中的Java 对象可以被划分为两类,分别是生命周期较短的对象和生命周期较长的对象。
生命周期较短的对象,创建和消亡都非常迅速。
生命周期较长的对象,在某些极端的情况下甚至与JM 的生命周期保持一致。
Java 堆区分为新生代(2_2(伊甸园区、Survivor区(from区、to区))默认占比8 :1∶1)和老年代,生命周期较短的对象一般放在新生代,生命周期较长的对象会进入老年代。在堆内存中新生代和老年代的所占用的比例分别是多少呢?新生代与老年在堆结构的占比可以通过参数“-XX:NewRatio”配置。默认设置是“-XX:NewRatio=2”,表示新生代占比为 1,老年代占比为2,即新生代占整个堆的 1/3,如图 7-14所示:
代码演示
2.1修改配置
-Xms600M -Xmx600M -XX:NewRati0=4
2.2实际代码
public class EdenSurvivorTest {
public static void main(String[] args) {
System.out.println("我只是来打个酱油~");
try {
Thread.sleep(1000000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
🔥2.3使用jstat命令
jstat
命令的全称就是Java Virtual Machine Statistics Monitoring Tool
,即 Java 虚拟机统计监测工具。它主要用于监视 Java 虚拟机(JVM)的各种运行时状态信息
使用命令jps查看得知Java进程的ID后,使用命令:
jstat -gc ID 1000 10
每个1秒输出一次堆区使用情况的信息,共计输出10次。
其中看出堆区中Eden空间为EC=122880,而Old区的空间为OC=491520。刚好是Eden的4倍。
🔥2.4使用jconsole命令
💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖
热门专栏推荐
🌈🌈计算机科学入门系列 关注走一波💕💕
🌈🌈CSAPP深入理解计算机原理 关注走一波💕💕
🌈🌈微服务项目之黑马头条 关注走一波💕💕
🌈🌈redis深度项目之黑马点评 关注走一波💕💕
🌈🌈JAVA面试八股文系列专栏 关注走一波💕💕
🌈🌈JAVA基础试题集精讲 关注走一波💕💕
🌈🌈代码随想录精讲200题 关注走一波💕💕
总栏
🌈🌈JAVA基础要夯牢 关注走一波💕💕
🌈🌈JAVA后端技术栈 关注走一波💕💕
🌈🌈JAVA面试八股文 关注走一波💕💕
🌈🌈JAVA项目(含源码深度剖析) 关注走一波💕💕
🌈🌈计算机四件套 关注走一波💕💕
🌈🌈数据结构与算法 关注走一波💕💕
🌈🌈必知必会工具集 关注走一波💕💕
🌈🌈书籍网课笔记汇总 关注走一波💕💕
📣非常感谢你阅读到这里,如果这篇文章对你有帮助,希望能留下你的点赞👍 关注❤收藏✅ 评论💬,大佬三连必回哦!thanks!!!
📚愿大家都能学有所得,功不唐捐!