![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 53
yuan_boss
网络安全领域知识博主
展开
-
7JProfiles分析OOM
JProfiles分析OOM1.给IDEA安装配置JProfiles先在IDEA的File-setting–Plugins安装jprofiles,然后重启IDEA,再到官网下载JProfile,安装好后,到IDEA的File–setting–Tools找到Jprofile,找到对应的Jprofile.exe路径,如图:再到出现OOM的类中设置VM options的参数-Xms1m -Xmx8m -XX:+HeapDumpOnOutOfMemoryError-Xms:设置初始化分配内存的大小,默认原创 2021-07-21 12:02:21 · 236 阅读 · 2 评论 -
6.新生区、永久区
新生区、永久区文章目录新生区、永久区新生区GC清理流程:测试代码输出结果永久区元空间逻辑上存在,物理上不存在证明:输出结果结果分析新生区 类:诞生和成长的地方,甚至死亡 伊甸园,所有的对象都是在伊甸园区new出来的! 幸存区(0,1)真理:经过研究,99%的对象都是临时对象GC清理流程:先GC,后Full GC,再GC,再Full GC,直到老年区对象满了,就会出现OOM测试代码//-Xms8m -Xmx8m -XX:+PrintGCDetailspublic class原创 2021-07-21 11:59:51 · 671 阅读 · 1 评论 -
5.堆(Heap)
堆(Heap)Heap,一个JVM只有一个堆内存,堆内存的大小是可以调节的如何调节堆内存大小? 修改VM options的参数 -Xms1024m -Xmx1024m -XX:+PrintGCDetails 其中-XX:+PrintGCDetails可要可不要,这个参数只是为了打印GC工作信息类加载器读取了类文件之后,一般会把什么东西放到堆中?类,方法,常量,变量,保存我们引用类型的真实对象堆内存中还要细分为三个区域: 新生区(伊甸园区): Young/New原创 2021-07-21 11:58:28 · 80 阅读 · 0 评论 -
4.深入理解栈
深入理解栈栈:数据结构程序=数据结构+算法:持续学习程序=框架+业务逻辑:吃饭栈:先进后出,后进先出队列:先进先出(FIFO:First Input First Output)栈:栈内存,主管程序的运行生命周期与线程同步线程结束,栈内存也就是释放,对于栈来说,不存在垃圾回收问题一旦线程结束,栈就Over!栈:8大基本类型+对象引用+实例的方法栈运行原理:栈帧栈满了:StackOverflowError栈的内脏:(上面的绿色部分叫栈顶,下面的黄色部分叫栈底)程序正在执行的方法,一定在原创 2021-07-21 11:57:06 · 84 阅读 · 0 评论 -
1.JVM的体系结构
JVM的位置与体系结构1.对JVM的理解1.JVM说白了就是个软件,虽然说他是个环境,实际上他就是个虚拟机软件2.JVM是用C写的3.JVM被包含在JRE2.JVM的位置,如下图:3.JVM的体系结构理解1.Java栈,本地方法栈,程序计数器不可能存在垃圾,所以不会有垃圾回收,为什么不可能存在垃圾呢?因为栈里面如果有垃圾,将会把栈堵住,最底层的main方法无法弹出去,程序将会崩溃2.JVM调优99%都是对JVM中的方法区和堆调优,主要对堆进行调优JVM中的方法区和堆调优,主要对堆进行原创 2021-07-21 11:53:25 · 53 阅读 · 0 评论