我在 JavaFX 上处理图像幻灯片放映应用程序,经过一段时间的 Java 崩溃,没有可用内存错误。在接口代码中,我有:
image = new ImageView();
Group root = new Group(image);
imageScene = new Scene(root, height, width);
primaryStage.setScene(imageScene);
在后台线程中,我为图像视图设置图像源:
...
Map<String, Image> imagesMap = new HashMap<>();
...
// Slide thread
if (!imagesMap.containsKey(item.File)) {
Image image = new Image(item.File);
imagesMap.put(item.File, image);
}
Image i = imagesMap.get(item.File);
image.setImage(i);
当应用程序运行时(使用参数:-XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -Xmx256m)分配给java进程的内存总是在增加......