我在收集有关在我的代码中生成的未处理异常的信息(非常少见)时遇到了一些麻烦。我已经以标准方式设置了一个处理程序。
我主要有:
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(ExceptionProcessor);
处理函数是:
public void ExceptionProcessor(object sender, UnhandledExceptionEventArgs e)
{
Log(((Exception)e.ExceptionObject).StackTrace);
}
但我得到的只是一条线(并不总是相同的)。谷歌搜索显示,这些行在 .Net Framework 库中很深,并且应该是堆栈跟踪的最后一行。因此,关于我的代码的所有实际有用的信息都丢失了。有谁知道可能导致这种行为的原因是什么?
我最近得到的那行说它不能将 System.Threading.AutoResetEvent 转换为 System.Threading._ThreadPoolWaitOrTimerCallback。
谢谢。