Java内存在运行JavaFX应用程序时不断增加

时间:2017-04-27 23:58:36

标签: java-8 out-of-memory javafx-8 netbeans-8

我正在使用Netbeans 8.2运行JavaFx应用程序。初始化应用程序时,我单击应用程序菜单打开一个文件,弹出文件选择器窗口。现在,这就是问题发生的地方。当我查看系统监视器中的内存使用情况(在Ubuntu 16.04 LTS上)时, java内存使用量每隔几秒就会一直增加(见图像),直到我取消文件选择窗口。

我在netbeans中运行了探查器以获得一些洞察力,但一切似乎都很好。即使堆使用也在限制范围内。不确定是什么问题。

Memory Usage Screenshot

1 个答案:

答案 0 :(得分:0)

不用担心,它会不断升级但最终会在GC(垃圾收集)时被清除。我也注意到了(也来自Netbeans 8.2),它把我带到了这里......但是当我打字的时候,我注意到它退了下去,我就像#34;哦,GC恰好发生了## 34。

真正的JavaFX可能会重复使用某些对象,但我已经注意到它并没有添加超过100MB的RAM,然后收集并重置。

您可以限制您希望它分配的最大RAM量,以便之前收集垃圾。 :)

要设置最小/最大RAM,请转到项目属性 - >运行 - > VM选项并将-Xms16M置于最小值,将-Xmx400M置于最大值.M / G为兆字节和技嘉......

示例:

  

-Xms16M -Xmx400M