gpt4 book ai didi

c# - 如何允许 IErrorHandlers 处理 WCF 中的 AccessViolationExceptions?

转载 作者:太空宇宙 更新时间:2023-11-03 14:10:25 25 4
gpt4 key购买 nike

当然,我们必须避免捕获和尝试处理 AccessViolationExceptions (AVE)。但是,在我当前的情况下,异常是从 COM+ 托管组件抛出的,该组件终止了抛出异常的进程,因此可以正确清理。但是,使用所述 COM+ 组件的托管 WCF 的 Windows 服务收到冒泡的 AVE,导致服务崩溃。

适当的 IErrorHandlers 似乎不会触发/检测 AVE。

有什么方法可以让 WCF IErrorHandlers 捕获 AVE?

最佳答案

作为变体,您可以尝试在 AppDomain.CurrentDomain.UnhandledException 上添加处理程序您可以在其中重新启动服务。

或者,您可以在一个(“主”)AppDomain 中运行主 win_service,并在另一个(“Sub”)AppDomain 中托管 WCF 服务。通过这种方式,您可以在不影响主进程的情况下卸载(重新加载)子进程。

关于c# - 如何允许 IErrorHandlers 处理 WCF 中的 AccessViolationExceptions?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8030898/

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