Java虚拟机内存结构

Java虚拟机的堆被分为3个被称为域(generation)的主要部分,它们对应于对象的不同生存期,3个域分别是新域(新生代)(Young Generation)、旧域(老年代)(Tenured Generation)和永久域(永久代)(Perm Generation),标记为Virtual的部分被保留,在必要时才实际分配出去。
新域由Eden和两个救助空间Survivor组成。新对象通常创建于Eden中。其中一个救助空间Survivor会随时被清空,并用做另一个救助空间Survivor的目的地。当进行垃圾收集时,对象在 所有来自Eden和救助空间Survivor的活动对象都被复制到另一个救助空间Survivor。 两个救助空间Survivor之间移动,直到它们足够"老",能够被移入保存生存期较长对象的旧域(Tenured Generation)中。
永久域保存那些在虚拟机整个生存期都生存的对象。因此,该域不需要被垃圾收集程序清空。
2.垃圾回收的2种方法:引用计数、对象引用遍历。
3.JVM中通常所说的堆(Heap),实质上是新域和旧域的和,它代表了这两个区域的内存大小。

可通过jconsole命令(java监视和管理控制台)查看JVM内存的结构
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值