尝试catch子句会影响性能吗?

时间:2010-12-20 17:50:18

标签: .net

如果try/catch阻止没有异常,

try会影响效果吗? try/catch/finally怎么样?

4 个答案:

答案 0 :(得分:10)

try/catchtry/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