gpt4 book ai didi

Java:修复内存泄漏

转载 作者:行者123 更新时间:2023-11-30 06:22:04 25 4
gpt4 key购买 nike

我的 java 游戏应用程序发生内存泄漏,这是我意料之中的事情。泄漏来自在此按钮 Action 监听器上多次创建的新实例,因为每次我按下按钮时,它都会创建一个新的 RegularMode 实例:

btnRegular.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
frame.remove(pane);
gm = Gamemode.REGULAR;

mode = new RegularMode(frame, WIDTH, HEIGHT);
}
});

有趣的是,我一直在尝试使用以下代码修复内存泄漏:

public static void initDisplay() {
gm = Gamemode.NONE;
mode.setRunning(false);
frame.remove(mode.getPane());
frame.add(pane);
frame.validate();
frame.repaint();
mode = null; // THIS LINE
frame.pack();
}

– 但它不起作用。有没有其他方法可以解决这种类型的内存泄漏?

最佳答案

我不确定您是如何得出您提供的代码导致内存泄漏的结论的。使用一些探查器来查看当前堆中和累积的对象。您可以搜索探查器或检查此: http://jyops.blogspot.se/2012/09/java-memory-model-simplified.html

关于Java:修复内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19747301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com