try/catch
阻止没有异常, try
会影响效果吗?
try/catch/finally
怎么样?
答案 0 :(得分:10)
try/catch
和try/catch/finally
都不会影响到任何重要程度的效果。当然,创建做的异常会影响性能(这就是它们是否被捕获)
Do try/catch blocks hurt performance when exceptions are not thrown?
答案 1 :(得分:2)
创建例外确实会产生一些性能成本。通常,只有在代码中的那个点上有做的实际需要时才想捕获异常。
请注意,为了在潜在故障后关闭资源或执行其他必要任务,您只需使用try/finally
块。 finally
仍将按预期执行,您只是没有捕获该过程中的异常。相反,你让它冒泡到任何需要去的地方。
答案 2 :(得分:2)
try/catch
只会在抛出异常时影响性能(但仍然不是因为try/catch
,这是因为正在创建异常)。
try/catch/finally
不会在try/catch
上添加任何额外开销。
答案 3 :(得分:0)
不,当没有抛出异常时,try / catch块不会产生任何性能成本。
在这里阅读一篇很棒的MSDN文章: http://msdn.microsoft.com/en-us/library/ms973839.aspx