0

你能解释一些处理渲染异常的方法吗?当您绘制某些东西时会发生渲染,因此解决方案应该处理正确的重新绘制。这与构建失败无关,而仅与渲染有关。

我唯一想到的就是重新粉刷。我想还有更多?

4

1 回答 1

3

对此没有通用的运行时解决方案。正如 Joachim 所指出的,如果您只是尝试重新绘制,那么重新绘制很可能会触发相同的异常,并且您的用户界面将被锁定。

最好的方法是找出导致异常的原因并修复代码,以便消除异常的根本原因,或者绘制代码采取适当的措施来避免问题。(仅当绘画代码是您的代码时,第二种选择才适用......)


如果我使用的库由于编码错误或其他原因而无法渲染怎么办?

您修复库,或实施某种解决方法来避免触发库故障的情况(如果可能的话)。如果这不起作用,则将库替换为正常工作的替代方案。

如果渲染因未知原因(无法计算)而失败怎么办?

那么你有一个问题。如果您无法弄清楚是什么触发了故障,您将无法找到可靠的补救措施。你留下了有问题/不可靠的补救措施……你的申请很可能是不可靠的。

我想知道当所有其他保护系统都失败时该怎么办。

如果您无法正确描述不可靠性的性质和/或原因,则无法从不可靠的组件构建可靠的系统。


还应该注意的是,Java 应用程序中的很多“随机不可靠性”是由于同步不足造成的;即一个线程正在更新某个对象或数据结构,而另一个线程可能正在尝试读取它。大多数基于 GUI 的应用程序本质上都是多线程的。如果您有一个看起来不可靠的库,那么真正的问题可能是您的应用程序级代码没有正确同步。

于 2012-11-07T13:00:54.230 回答