gpt4 book ai didi

c# - 事件处理程序中的异常管理实践

转载 作者:太空狗 更新时间:2023-10-29 19:57:24 25 4
gpt4 key购买 nike

.NET 4.0,C#

我正在尝试向我的项目中添加一些异常管理框架。如果可能,框架会向数据库发布异常。

我对异常处理做了很多研究,但我在理解应该如何处理事件处理程序(即 timer.elapsed 或异步回调)中发生的异常时遇到了一些麻烦。每个事件处理程序都应该有一个 try catch block 吗?

最佳答案

事件处理程序应该始终在其主体中有一个try..catch..finally block 以防止事件处理程序传播异常。此外,事件处理程序应该快速执行,因此避免在事件处理程序本身内部执行昂贵的 IO 或数据库操作。

此外,您可以拥有类似 Error 的属性向事件的订阅者指示发生了错误(在异步调用的情况下)。

更多信息

关于c# - 事件处理程序中的异常管理实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8744480/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com