我理解SoftMaxHeapSize的目标,但我找不到它的真正作用。希望熟悉JDK内部结构的人能了解一些情况。
具体而言,当达到软极限时:
ZCollectionInterval和ZUncommitDelay吗?对于什么值?最后,如果我执行类似-XX:SoftMaxHeapSize=1M -Xmx=1T的操作,应用程序会正常工作吗?
发布于 2021-09-01 08:58:36
在JDK 16中,使用比SoftMaxHeapSize更多的活动堆使应用程序处于永久GC循环中。我不认为这是最优的,但是因为ZGC是并发的,所以它不会对应用程序产生灾难性的影响。在我的测试中,它占用了一个额外的CPU核心(但我假设这将取决于GC线程的数量)。
此外,似乎所有的GC启发式(调优了GC应该运行的频率)都会首先查看SoftMaxHeapSize。
https://stackoverflow.com/questions/68998369
复制相似问题