1

这可能吗?

4

4 回答 4

3

使用正确的架构,适用于多种应用程序 - 当然。

只需将 GUI 和“核心逻辑”拆分为单独的进程,让 GUI 能够在崩溃后运行它时检测并重新连接到正在运行的后端进程。

考虑到 X 崩溃通常会导致整个系统崩溃,为了获得额外的稳健性,请迁移到经典的客户端/服务器架构,后端通过网络运行。

于 2009-07-23T21:02:42.243 回答
1

不是。X11 是窗口管理器的基础,然后是在该窗口环境中运行的 Java Swing 应用程序。因此,如果 X11 崩溃,您无能为力。

于 2009-07-23T20:46:05.570 回答
1

X11 桌面应用程序从崩溃的 X11 服务中恢复通常是不切实际的,无论它是用 Java 还是其他语言编写的。

但是有可能首先防止问题发生在 Java 应用程序上。我记得很长一段时间(5 年以上)前不得不处理这个问题。Sun 有一个解决方法,它涉及设置系统属性来告诉 JVM 不使用 2D 图形加速。我不记得细节了,但您可以在 Sun 网站上找到等效的解决方案。

于 2009-07-23T22:57:35.040 回答
1

除了 wrt 所说的,您的后端系统还可以监视 HeadlessExceptions,并适当地处理它们。

于 2009-07-23T21:05:09.430 回答