首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javaagent、系统和关机

javaagent、系统和关机
EN

Stack Overflow用户
提问于 2012-03-26 14:03:19
回答 2查看 861关注 0票数 1

我们编写了一个java代理,它提供了一些使用java.awt.TrayIcon的图形用户界面。当我们使用这个代理时,例如Tomcat,我们有以下问题:

  1. 用户使用shell脚本
  2. 启动Tomcat我们的代理添加图标给系统
  3. 用户使用shell脚本
  4. 关闭Tomcat事件线程,仍然有可显示的组件、系统图标,并且不退出
  5. 因为AWT事件线程是非守护进程线程,整个应用程序不能退出h 210g 211

现在的问题是,我们应该做什么,让一个应用程序关闭?是否有可能使AWT事件分派线程守护进程?探员有关机钩吗?还要别的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-19 06:54:31

为了完整起见,以下是我如何解决这个问题的方法:

我已经用作业启动了另一个守护进程线程,它定期检查可显示的AWT组件。如果只剩下一个,那就是我的系统射线图标,那么我就移除它。这允许AWT子系统退出,从而使整个应用程序正常退出。

票数 1
EN

Stack Overflow用户

发布于 2012-03-26 14:30:42

您可以尝试添加一个关闭钩子(Runtime.getRuntime().addShutdownHook()),它调用

SystemTray.getSystemTray( ).remove( trayIcon );

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9873592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档