asp.net - 记录异常时忽略 ThreadAbortException

标签 asp.net logging exception

记录异常时忽略 ThreadAbortException 的正确方法是什么?

将其捕获在空的 catch block 中以使其消失是否安全?

最佳答案

如果您需要阻止 ThreadAbortException 在调用堆栈中进一步传播,您可以调用 Thread.ResetAbort。所以尝试这样的事情:

try
{
  // some code
}
catch (ThreadAbortException ex)
{
  // do some logging
  Thread.ResetAbort();
}

至于“正确” - 这取决于您的使用场景。除非你确切地理解它被提出的原因,否则我通常会谨慎对待这些问题。在阶段中,这是一个“立即停止,快速,放下你正在做的事情”的信号。重置它并继续进行进一步处理应谨慎进行。

关于asp.net - 记录异常时忽略 ThreadAbortException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3281691/

相关文章:

asp.net - 在日历中显示图像而不是文本 "NextPrev"

c# - 网站授权行为异常

java - 使用 logback 仅存档旧日志

java - 避免在 Java 中使用相同的 try catch block

c# - 从 ASP.Net Web 应用程序在 Azure 虚拟机中远程运行 .exe

spring - 如何在 Spring Boot 的 application.yml 中配置滚动文件附加程序

Android Logcat 旋转大小和旋转参数数量

JavaFX ImageView 抛出 IllegalStateException

c# - 当应用程序未使用那么多内存时如何获得 System.OutOfMemoryException

c# - 将用户添加到 signalr 组时如何显示所有以前的消息?