新生代 老年代 jvm
时间: 2024-06-18 21:02:47 浏览: 136
JVM内存模型架构图-新生代-老年代-永久代
JVM(Java虚拟机)将内存分为两个部分:新生代和老年代。
新生代内存用于存放新创建的对象,它的大小通常比较小,主要是因为大部分新创建的对象很快就会被垃圾回收机制回收,不需要长时间占用内存。新生代内存又分为两个区域:Eden区和两个Survivor区。当新对象被创建时,它们会被分配到Eden区,当Eden区满时,会触发一次Minor GC(年轻代垃圾回收),将Eden区和Survivor区中不再被引用的对象清除,并将仍然存活的对象转移到另一个Survivor区中。这样交替多次后,仍然存活的对象会被转移到老年代中。
老年代内存用于存放长时间存在的对象,它的大小比较大,因为这些对象不容易被回收。当老年代内存满时,会触发一次Full GC(全局垃圾回收),对整个堆进行垃圾回收。
阅读全文