【发布时间】:2012-04-08 00:03:49
【问题描述】:
我正在使用 Eclipse Indigo 在 Java 中制作应用程序。当我使用 Eclipse 运行它时,任务管理器显示 javaw.exe 正在使用 50mb 的内存。当我将应用程序导出为可运行的 .jar 并执行 .jar 时,任务管理器显示 javaw.exe 正在使用 500mb。 为什么是这样?我该如何解决这个问题?
编辑:我使用的是 Windows 7 64 位,我的系统显示我安装了 Java 1.7。显然内存问题是由while循环引起的。我将研究导致问题的 while 循环内部的内容。
编辑:发现问题。在 while 循环中的某一时刻,创建了新的 BufferedImage 实例,而不是替换相同的 BufferedImage。
【问题讨论】:
-
您确定没有将 Eclipse 实例与应用程序实例混淆吗? Eclipse 也是一个 java 应用程序——只是一个猜测。除此之外,您可以尝试使用分析器来了解发生了什么。
标签: java memory jar memory-leaks executable-jar