我遇到了一个关键问题。在 Java RCP 应用程序(桌面)上工作,该应用程序经常在我的机器上(而不是在我同事的机器上)崩溃。
我将 xmx 和 xms 设置为我的同事应用程序的配置,我在内存上运行诊断程序,但应用程序仍然崩溃。
根据内存诊断的图表,在崩溃的那一刻,非堆内存在增加(因为加载类的增加)。我同事电脑的内存比我机器上的内存好3倍左右。像在另一台机器上一样设置堆内存(xmx 和 xms)后,我怀疑存在堆内存问题(我使用的是最新版本的 java 8)。
有什么办法可以知道堆内存的限制吗?
ram的值对非堆内存有影响吗?
如果您在未指定jvm参数MaxMetaspaceSize和metaspacesize的情况下启动并使用繁重的java 8 rcp桌面应用程序,会发生什么?
堆内存消耗的内存几乎就像非堆(元空间)消耗一样正常吗?
最后一个问题:非指定元空间大小参数会导致应用程序崩溃吗?