gpt4 book ai didi

java - 为什么当我增加新时代内存时,Minor GC 时间会增加

转载 作者:行者123 更新时间:2023-12-01 16:50:53 25 4
gpt4 key购买 nike

我之前使用2G new Age内存,我看到minor gc每10秒发生一次,每次需要0.1-0.15秒,我想减少minor gc频率,所以我将new Age内存设置为3G。之后,minor gc 每 15 秒发生一次,但大约需要 0.3 秒才能完成。为什么当我增加新时代内存时,Minor GC 时间会增加?我注意到增加内存后,GC后的 Activity 对象从55M增加到80M,是什么原因?

最佳答案

原因是,较大的内存区域中有更多的 Activity 对象。 GC 时间主要与必须复制到幸存者区域的 Activity 对象的数量(和总体大小)成比例。

只有当您创建许多同时存在且不完全适合 YG 的对象时,您才能从更大的年轻一代区域中获利。这迫使他们被纳入老一代。

否则,总 GC 时间保持不变,您只需选择如何将其拆分为单独的 stop-the-world 事件:更长且频率更低,或者更短且频率更高。

关于java - 为什么当我增加新时代内存时,Minor GC 时间会增加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40373999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com