上下文:我有一个从父“启动器”程序运行的Swing JFrame应用程序。启动器负责检查更新和实际更新应用程序。因此,它在儿童类加载器中运行该应用程序,最终在新的jar可用时重新启动它。
import java.awt.Frame;
import java.io.IOException;
import javax.swing.JFrame;
public class BugTest extends JFrame {
public BugTest() {
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
setBounds(0, 0, 100, 100); // <- comment this and the leak disappear! -<<
setVisible(true);
}
public static void main(String[] args) throws IOException {
new BugTest();
System.out.println("Close the window then press enter");
System.in.read();
System.gc();
Frame[] frames = Frame.getFrames();
System.out.println("There are " + frames.length + " frames (should be 0)");
for (Frame frame : frames) {
System.out.println(frame);
}
}
public void finalize() {
System.out.println("Frame was finalized");
}
}
Boes有人对正在发生的事情有洞察力吗?我是不是应该做点别的事情来把一切都清理干净?
>
顶级容器基于来自本机OS的资源(AWT resurces)
这个对象
的生命周期只与JVM一起结束,并且永远不会被GC,您需要在您的一侧进行更改
问题内容: 我只是为了好玩而创建了一个项目,该项目创建了大约5 GB的内存,并且没有删除它。只要应用程序正在运行,“内存泄漏”就在那里。我第二次关闭应用程序后,内存在2秒内恢复正常,就好像我的程序从未运行过一样。因此必须提出问题。 Windows 7完成处理后,是否会清理掉程序造成的内存泄漏? 所有Windows版本都这样做吗? Linux和Mac OS X环境会这样做吗? 问题答案: 当程序终止
问题内容: 有人可以解释一下Swing和AWT有什么区别吗? 在任何情况下,AWT都比挥杆更有用/建议使用,反之亦然? 问题答案: AWT是你操作系统中存在的本机系统GUI代码的Java接口。尽管它会尝试,但在每个系统上都无法正常工作。 Swing或多或少是纯Java GUI。它使用AWT创建操作系统窗口,然后将按钮,标签,文本,复选框等的图片绘制到该窗口中,并响应你的所有鼠标单击,键输入等,从而
问题内容: 我有一个没有响应的应用程序,似乎处于死锁或类似死锁的状态。请参阅下面的两个线程。请注意,线程阻塞了。但是,刚刚致电。所以块(我相信)。 这里是方法: 有谁知道这里发生了什么或如何解决? 问题答案: 在我认识的Swing开发人员中,这似乎是有问题的,但这也许不像我想象的那样广为人知。我似乎回想起在文档中看到了关于正确使用困难的严厉警告,但我很难找到任何东西。我在当前的官方文档中找不到任何
问题内容: 我已经简短地研究了GWT,并且喜欢我可以用Java开发并将应用程序编译为HTML和JavaScript的想法。GWT和AWT和Swing背后的概念是相同还是不同? 问题答案: GWT在使用Widget,面板和提供的EventListener方面与Swing非常相似。观察GWT的另一种方法是将Javascript和HTML视为汇编语言,而将GWT视为生成Javascript和HTML的一
与这个问题类似,我也有一个问题,我打开的第一个JFrame比后面的JFrame花的时间长得多。我有一个应用程序,它基于控制台中的用户输入打开JFrames。因此,我将有时间在一个单独的线程中预先加载JFrame内容。我应该调用Swing或AWT的哪个函数来执行这个初始化(另一个StackOverflow回答是指某个不再在JRE/JDK中的sun包)?
问题内容: 我已经实现了一些带有小型图形用户界面的应用程序。没什么复杂的,但是我遇到了一些问题,这些问题导致组件无法显示或无法正常运行。 现在我的问题是: 您如何计划这些用户界面?当您需要进行更改时该怎么办?您如何调试奇怪的行为? 这几乎适用于所有类型的GUI设计。当然,使用Microsoft Visual Studio具有很大的优势,因为您几乎获得了在设计器中看到的东西。 是否存在 优秀 的AW