Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 简单Swing应用程序内存通过调整框架大小而增长_Java_Swing_Memory Leaks - Fatal编程技术网

Java 简单Swing应用程序内存通过调整框架大小而增长

Java 简单Swing应用程序内存通过调整框架大小而增长,java,swing,memory-leaks,Java,Swing,Memory Leaks,这个简单的程序,内存(任务管理器的私有工作集)通过调整其框架的大小而增长。如果我持续调整帧大小,32MB(最初)到140MB甚至更多。为什么会发生这种情况?对于Java程序来说这正常吗 import javax.swing.JFrame; import javax.swing.SwingUtilities; public class TestSwing { public static void main(String[] args) { SwingUtilities.i

这个简单的程序,内存(任务管理器的私有工作集)通过调整其框架的大小而增长。如果我持续调整帧大小,32MB(最初)到140MB甚至更多。为什么会发生这种情况?对于Java程序来说这正常吗

import javax.swing.JFrame;
import javax.swing.SwingUtilities;

public class TestSwing {
    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            JFrame frame = new JFrame();
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

            frame.setVisible(true);
        });
    }
}
我对SWT和JavaFX简单的单帧程序也做了同样的操作。与Swing相比,内存增长非常缓慢,但它似乎在稳步增长

我也对notepad.exe的框架做了同样的处理,但内存没有增长

我使用VisualVM观察JVM堆,但堆大小没有改变。 所以问题可能是GUI库使用的本机内存

[专用工作集:31MB(首字母)->192MB(末字母)]


环境:Windows Vista/Java 8 update 66是否正常,可能是,为什么?这与API如何为图形上下文保留内存有很大关系(猜测)。如果缩小窗口,它会继续增长吗?即使我缩小窗口,内存也不会收缩。不,我不认为它会收缩,只是想确保它不会增长如果我持续调整大小(反复缩小和放大),内存会快速增长到140MB~然后缓慢增长。获取更多详细信息。