java - 关闭 JavaFX 选项卡不会释放内存

标签 java memory memory-management memory-leaks javafx

我昨天发布了一个关于在删除标签时释放内存的类似问题(JavaFX GUI doesn't release memory)。原来我在一个 Action 监听器中持有一个引用。今天我一直在尝试用 Tab 控件做类似的事情,这次我没有添加任何监听器,因为它们内置在 JavaFX 控件中。

当关闭 Tab 时,堆仍然包含 Tab 实例及其一些内部类。我可以做些什么来释放内存还是 JavaFX 中的错误?

public class TabTest extends Application {

    @Override
    public void start(Stage primaryStage) {

        final TabPane tabPane = new TabPane();
        tabPane.getTabs().add(new Tab());
        tabPane.setTabClosingPolicy(TabPane.TabClosingPolicy.SELECTED_TAB);

        //create scene and stage
        Scene scene = new Scene(tabPane);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

最佳答案

这似乎是一个错误,应该在 Java 8u20 中修复(参见此处的可用性:http://openjdk.java.net/projects/jdk8u/releases/8u20.html):https://javafx-jira.kenai.com/browse/RT-25652

关于java - 关闭 JavaFX 选项卡不会释放内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24780226/

相关文章:

.net - WinDbg 地址汇总

由 C++ 编写

c - 将 realloc() 返回的地址分配给同一个指针是好的编码习惯吗?

ios - 复制时保留计数

java - Android:无法获取 API 的结果

可以延迟分配静态内存吗?

java - 无法使用有界通配符传递通用子类的内部类

c++ - 为什么我的系统不释放缓冲区/缓存

java - 将工作中的 Java 项目部署到 Eclipse

Java 7 : ThreadLocalRandom generating the same random numbers