新生代,老年代是怎么定义和分配的

 我来答
大米我不爱
2017-08-27
知道答主
回答量:12
采纳率:0%
帮助的人:1.3万
展开全部
新生代和老年代怎样的比例比较合适呢,两个年代的不合理分配会带来什么坏处呢?举个极端的例子:

1、heap有1G,young gen指定为990m,old gen指定为10m. 请问坏处是什么呢?我能联想到的是:一旦young区的minor GC快撑不住时,old gen由于过小很容易触发full GC,stop the world(假定old gen回收器既不是CMS,也不是G1),而且会频繁的触发full GC,不过old gen只有10m啊,即使full GC也并不可怕啊,耗时也很短啊,所以为什么不可以young很大,old很小呢?

2、heap有1G, young gen指定为10m,old gen指定为990m, 又有什么坏处呢?我能联想到的是:Full GC的频率应该会很小,而minor GC频率会很大,虽然minor GC耗时很短暂,但这也会导致频繁的short pause啊,也会有lantency啊。

综上,我觉得两个区不管谁大谁小,都会导致坏处,所以我不知合理的配置应该是怎样?看到书上一般是指定young gen很小,而old gen很大,我不知道为什么会这样呢?小弟这方面知识理解有限,希望高手解疑。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式