Exception 是否曾经有过由于用户调用的操作而导致异常发生并且不需要让用户知道的情况?

Exception 是否曾经有过由于用户调用的操作而导致异常发生并且不需要让用户知道的情况?,exception,exception-handling,Exception,Exception Handling,在实现异常处理时,似乎遵循相同的模式,即用户可调用的任何代码(即按钮后面)都需要try/catch/finally,然后必须传播到用户(throw),然后向用户显示消息框 是否有任何时候由于用户调用的操作而发生异常,但不需要让用户知道 谢谢当然可以。一个常见的例子是:打开一个窗口,用来监视某个长时间运行的任务(其执行独立于该窗口)的进度,然后关闭并释放该窗口。正如窗口被释放一样,正在监视其进度的线程尝试使用BeginInvoke更新其进度指示器。BeginInvoke最终将抛出InvalidOp

在实现异常处理时,似乎遵循相同的模式,即用户可调用的任何代码(即按钮后面)都需要try/catch/finally,然后必须传播到用户(throw),然后向用户显示消息框

是否有任何时候由于用户调用的操作而发生异常,但不需要让用户知道


谢谢

当然可以。一个常见的例子是:打开一个窗口,用来监视某个长时间运行的任务(其执行独立于该窗口)的进度,然后关闭并释放该窗口。正如窗口被释放一样,正在监视其进度的线程尝试使用BeginInvoke更新其进度指示器。BeginInvoke最终将抛出InvalidOperationException,这是用户在关闭窗口的准确时刻决定关闭窗口的直接结果,但无需为此打扰用户。简单地接受例外并继续前进