1.JavaGC回收机制

1.回收的原因:如果不进行垃圾回收,内存迟早会被全部耗空,因此垃圾回收是必须的。

2.需要回收的对象是什么?

 解答:那些内存是需要去回收,是回收机制第一个需要考虑的,回收的就是不可再被使用的对象。

JVM内存分区模型:

Hotpot VM是把Heap Area分为young generation和old generation两个物理区域,也就是常说的新生代和老生代。

特征如下:

1.年轻代:大部分对象在这里分配,通常来说会进行比较小但是频繁的回收,花费时间较短。

2.年老代‘=内存相对而言较大,对象会相对保留比较长的时间,大对象一般也分配在此,占用空间上升缓慢,并且回收的效率低。

stop-the-world会在回收的时候,花费较长的时间。

其中年轻代经过一段时间后,可能会被·移动到年老代去,permanent generations为持久区,主要存放元数据class data structures,interned strings等信息。GC重点在于年轻代和年老代的回收。

相关图片如下所示:

 

3.JVM常用的参数如下:
Xss:每个线程的栈大小
Xms:堆空间的初始值
Xmx:堆空间最大值、默认为物理内存的1/4,一般Xms与Xmx最好一样
Xmn:年轻代的大小
XX:NewRatio :新生代和年老代的比例
XX:SurvivorRatio :伊甸园区和幸存区的占用比例
XX:PermSize:设定内存的永久保存区域(1.8已废除)
XX:MetaspaceSize:1.8使用此参数替代上述参数
XX:MaxPermSize:设定最大内存的永久保存区域(1.8已废除)
XX:MaxMetaspaceSize:1.8使用此参数替代上述参数
 

4.其中代相关演示如下:

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值