并发Java
- 分类
- Java JVM
- 难度
- 未设置
- 来源数
- 1
- 更新时间
- 2026/03/29 01:13
答案
Java中堆内存主要进行对象数据的存储,是一个线程共享的内存,它可以是物理上不连续、逻辑上连续的一块存储空间。会报OOM。它主要包括以下几个部分: + 年轻代:包括伊甸园区、幸存者0区和幸存者1区。年轻代是大部分新创建的对象存放的地方,当年轻代被对象放满时,会触发minor gc,并且将from区的对象移动到to区,并把这些对象的分代年龄+1,如果分代年龄超过一定的阈值,默认为15,该对象则会晋升到老年代。三个区域的比例默认是8:1:1 + 老年代:老年代通常存储分代年龄超过阈值的对象和大对象,当老年代存满时,会触发major gc,相比minor gc耗费时间更长。 + 方法区
相关题目(5)
怎么查看和分析堆内存?共源 1
Java
CPU 满了怎么排查?共源 1
并发Java
哪些情况会发生栈溢出?共源 1
Java JVM并发Java
常用的 JVM 排查工具有哪些?共源 1
Java JVM并发Java
JVM 什么时候启动?共源 1
Java JVMJava
元信息
审核状态: active
关联来源: 1
来源面经题(0)
这道题目前没有手动沉淀的面经题来源。
来源(1)
Java八股(JVM).md
knowledge_noteQuestion 17: 堆内存的作用是什么?主要有哪些部分?
Source answer: Java中堆内存主要进行对象数据的存储,是一个线程共享的内存,它可以是物理上不连续、逻辑上连续的一块存储空间。会报OOM。它主要包括以下几个部分: + 年轻代:包括伊甸园区、幸存者0区和幸存者1区。年轻代是大部分新创建的对象存放的地方,当年轻代被对象放满时,会触发minor gc,并且将from区的对象移动到to区,并把这些对象的分代年龄+1,如果分代年龄超过一定的阈值,默认为15,该对象则会晋升到老年代。三个区域的比例默认是8:1:1 + 老年代:老年代通常存储分代年龄超过阈值的对象和大对象,当老年代存满时,会触发major gc,相比minor gc耗费时间更长。 + 方法区
Reviewed answer: 堆是线程共享的对象存储区域,主要用于存放对象实例。常见划分包括新生代、老年代,以及从规范角度独立存在的方法区;新生代通常包含Eden和两个Survivor区。