我有两个应用程序 (JVM),每个应用程序都具有相同的设置,并且每个都使用默认的垃圾收集器。
它们都分配了最小和最大 16 GB 的内存。
一个应用程序以我期望的方式运行。当它进行次要收集(清除)时,它将活动对象复制到幸存者空间。
另一个应用程序不会将任何对象复制到幸存者空间。每次它进行一次次要收集(清除)时,它也会进行一次主要收集(标记和扫描)。
我能想到的唯一原因是幸存者空间在次要收集(清除)期间被填满。
有任何想法吗?或对如何诊断行为的想法?
我有两个应用程序 (JVM),每个应用程序都具有相同的设置,并且每个都使用默认的垃圾收集器。
它们都分配了最小和最大 16 GB 的内存。
一个应用程序以我期望的方式运行。当它进行次要收集(清除)时,它将活动对象复制到幸存者空间。
另一个应用程序不会将任何对象复制到幸存者空间。每次它进行一次次要收集(清除)时,它也会进行一次主要收集(标记和扫描)。
我能想到的唯一原因是幸存者空间在次要收集(清除)期间被填满。
有任何想法吗?或对如何诊断行为的想法?