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

Java 8 Java内存在运行JavaFX应用程序时不断增加,java-8,out-of-memory,javafx-8,netbeans-8,Java 8,Out Of Memory,Javafx 8,Netbeans 8,我正在使用Netbeans 8.2运行一个JavaFx应用程序。初始化应用程序后,我单击应用程序菜单打开一个文件,弹出文件选择器窗口。这就是问题所在。当我查看系统监视器(在Ubuntu 16.04 LTS上)中的内存使用情况时 java内存使用率每隔几秒钟就会不断增加(见图),直到我取消文件选择窗口 我在netbeans中运行了探查器以获得一些见解,但一切似乎都很好。甚至堆的使用也在限制之内。不知道问题是什么 别担心,它会不断向上剪辑,但当它执行GC(垃圾收集)时,它最终会被清除回来。我也注意到

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

我在netbeans中运行了探查器以获得一些见解,但一切似乎都很好。甚至堆的使用也在限制之内。不知道问题是什么


别担心,它会不断向上剪辑,但当它执行GC(垃圾收集)时,它最终会被清除回来。我也注意到了这一点(同样来自Netbeans 8.2),这让我来到了这里。。但是当我打字的时候,我注意到它掉了下来,我想“哦,GC刚刚发生了”

JavaFX确实可以重用一些对象,但我注意到它没有添加超过100MB的RAM,然后收集并重置

您还可以限制希望它分配的最大RAM的数量,以便它更早地进行垃圾收集。:)

要设置最小/最大RAM,请转到项目属性->运行->虚拟机选项,并将-Xms16M设置为最小值,将-Xmx400M设置为最大值。。M/G表示兆字节和千兆字节

例如:

-Xms16M-Xmx400M


你有实际问题吗?你有错误吗?或者问题只是表面上的,显示的数字会让你不高兴?@DavidSchwartz-如果内存持续增加,应用程序最终会挂起。是的,这就是问题所在。好吧,那么实际的问题是应用程序挂起了?你认为它挂起是因为内存利用率的提高?或者你是否已经证实了这一点?也许这里最好的办法是创建一个简短、完整的示例(a),实际内存不足,并将其发布到你的问题中。你安装了什么X和mesa版本?你可能看到