![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm总结
文章平均质量分 78
qq_775879106
这个作者很懒,什么都没留下…
展开
-
虚拟机内存分区简版
java虚拟机内部简单介绍原创 2022-09-23 11:20:04 · 175 阅读 · 1 评论 -
JVM垃圾回收
垃圾回收,就是通过垃圾收集器把内存中没用的对象清理掉。垃圾回收涉及到的内容有:1、判断对象是否已死;2、选择垃圾收集算法;3、选择垃圾收集的时间;4、选择适当的垃圾收集器清理垃圾(已死的对象)。1、判断对象是否已死判断对象是否已死就是找出哪些对象是已经死掉的,以后不会再用到的,就像地上有废纸、饮料瓶和百元大钞,扫地前要先判断出地上废纸和饮料瓶是垃圾,百元大钞不是垃圾。判断对象是否已死有引用计数算法和可达性分析算法。(1)引用计数算法给每一个对象添加一个引用计数器,每当有一个地方引用它时,计数转载 2021-04-25 15:38:40 · 65 阅读 · 0 评论 -
JVM内存溢出
1、堆内存溢出堆内存中主要存放对象、数组等,只要不断地创建这些对象,并且保证GC Roots到对象之间有可达路径来避免垃圾收集回收机制清除这些对象,当这些对象所占空间超过最大堆容量时,就会产生OutOfMemoryError的异常。堆内存异常示例如下:/** * 设置最大堆最小堆 : -Xms20m -Xms20m * 运行时,不断在堆中创建OOMObject类的实例对象,且while执行结束之前。 * GC Roots(代码中得OOMObjectList)到对象(每一个OOMObject对转载 2021-04-23 16:29:02 · 240 阅读 · 0 评论 -
JVM内存区域
Java虚拟机在运行时,会把内存空间分为若干个区域:方法区、堆内存、虚拟机栈、本地方法栈和程序计数器。1.方法区方法区主要用于存储虚拟机加载的类信息、常量、静态变量,以及编译器编译后的代码等数据。在jdk1.7及其之前,方法区是堆的一个“逻辑部分”(一片连续的堆空间),但为了与堆做区分,方法区还有个名字叫“非堆”,也有人用“永久代”(HotSpot对方法区的实现方法)来表示方法区。从jdk1.7已经开始准备“去永久代”的规划,jdk1.7的HotSpot中,已经把原本放在方法区中的静态.转载 2021-04-23 09:57:29 · 59 阅读 · 0 评论