加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

Windows – Java应用程序在JRE更新后阻止服务器重新启动

发布时间:2020-12-14 04:07:49 所属栏目:Windows 来源:网络整理
导读:JRE更新后我遇到了问题. 如果我有一个已启动的Java应用程序并启动系统重启 – Windows无法自动停止此Java应用程序,我收到以下消息: “此程序阻止Windows重新启动”. 如果我按下取消,那么我可以看到阻止重新启动的Java应用程序挂起. 此问题会影响我的Java应
JRE更新后我遇到了问题.

如果我有一个已启动的Java应用程序并启动系统重启 – Windows无法自动停止此Java应用程序,我收到以下消息:
“此程序阻止Windows重新启动”.
如果我按下取消,那么我可以看到阻止重新启动的Java应用程序挂起.
此问题会影响我的Java应用程序和jconsole等应用程序.

在JRE更新之前,JRE 1.6.0_26上的一切正常.
我首先在JRE 1.6.0_36上遇到了这个问题.但它也发生在1.6.0_39.

P.S:我有Windows Server 2008 R2 Interprise

有没有人有同样的问题或者可以建议在这种情况下做什么?
谢谢.

更新:
我已经实现了以下addhook:

Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
logger.log("SHUTDOWN - BEGIN");
((Window) view).setVisible(false);
logger.log("SHUTDOWN - Visible");
((Window) view).dispose();
logger.log("SHUTDOWN - Dispose");
System.exit(0);
}
});

在具有这样的addhook的应用程序通常在系统重启时关闭之后,但我发现如果我们只关闭应用程序(通过按exit或“x”)Java VM未终止(我们可以在taskmgr中看到javaw进程).

从日志文件中我可以看到该程序永远不会离开dispose()函数.如果我评论dispose()并且只留下System.exit(0)Java VM仍然无法终止.

更新2:
已为此问题创建了故障单.我们收到了Oracle的回复:“问题被复制并确认.”

matts,这适用于所有Java应用程序,它已经在仅使用2008 OS和JRE 6U37的服务器上进行了测试.如果我们启动Java控制面板然后尝试重新启动服务器,我们会收到Windows消息.

如果应用程序最小化,我们不会收到消息.

消息“此程序阻止Windows重新启动”

我们选择“强制重启”或“取消”,如果你选择取消选项,Java控制面板挂起,javaw.exe进程以25%cpu运行,这是在四处理器服务器上,所以我假设一个处理器,它将以100%cpu运行.

奥利弗

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读