java 窗口与主线程的关系

fire314159 2006-04-05 05:23:37
当一个main执行时,他申请了两个frame变量,这两个变量在初始化时会visible两个窗口。此时,这两个窗口应该作为独立的线程执行,而观察结果也证明这一点,在窗口等待操作的同时,main函数是继续执行的。而且即使main函数执行到最后,只要窗口的那两个线程未被释放,main也不会结束。试验也证实了这一点。问题是当我用dispose方法关闭窗口时,即使这两个窗口都关闭了。main依然还没有结束。以我所知,frame的关闭只有三个属性,hide,dispose,exit。exit会导致整个程序提前退出,这我们都知道了。hide只是重新disvisible。这个dispose应该就是结束窗口线程。但事实上我做不到我猜想的结果。这当中是否有误,或者您能做出预期结果,请告知。
...全文
236 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
fire314159 2006-04-09
  • 打赏
  • 举报
回复
果然是可以的。看来是我的程序那个地方还开着线程,待好好慢慢检查。先结贴。
hemiao_1993 2006-04-07
  • 打赏
  • 举报
回复
感觉不太可能. 我试了一下主线程可以结束啊. 你是怎么做的,把代码贴一下.
JFrame f1 = new JFrame("frame1");
f1.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JFrame f2 = new JFrame("frame2");
f2.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
f1.setVisible(true);
f2.setVisible(true);
lgh2008 2006-04-07
  • 打赏
  • 举报
回复
我不懂这个, 但我可以帮你顶一下。
fire314159 2006-04-07
  • 打赏
  • 举报
回复
自己顶

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧