Eya*_*yal 2 c# robust try-catch visual-studio
这是一个很好的做法,用try和catch来包装每个函数吗?
我正在用c#构建一个服务器,并且我试图了解是否有一种方法可以使其更加健壮并且可以防止崩溃,使用try&catch语句将其中的每个函数包装起来.
这样做是否合理?
这是一个很好的做法,用try和catch来包装每个函数吗?
绝对不.这是灾难的一个方法 - 这意味着即使出现问题并且状态已经腐败,您也可能会继续尝试继续处理请求.
通常,您应该只有catch块,您可以在其中实际处理异常并继续成功; 否则,你应该让异常泡沫化.因此,您可能希望有一个catch
块来重试某些操作,但只需要特定的操作.
然后,您可以catch
在顶层有一个块,以阻止服务器本身崩溃.您还没有告诉我们您正在构建什么样的服务器 - 框架本身可能提供这样的适当catch
块.
捕获异常的另一个原因是将其包装并重新抛出它作为更合适的隐藏实现细节,并可能添加更多上下文.坦率地说,这可能有点痛苦,并且仅在某些情况下有用.这实际上取决于抛出异常的代码,以及您期望如何处理异常.
归档时间: |
|
查看次数: |
527 次 |
最近记录: |