在应用程序中,我注册了EventLog.EntryWritten事件,并使用.NET Threadpool线程等待更改事件发生。我认为这个.NET Threadpool线程发生异常,所以我想使用try / catch来确保,如下所示:
try {
eventLog.EntryWritten += new EntryWrittenEventHandler(EventLogMonitor);
}
catch (System.Componentmodel.Win32exception e)
{
// log error
}
我只是想知道我是否在正确的地方使用try / catch监视此线程是否存在异常?
答案 0 :(得分:6)
您编写的代码会在注册事件时捕获异常,而不是事件本身。
你应该把try..catch块放在EventLogMonitor方法中。
private void EventLogMonitor (Object sender,EntryWrittenEventArgs e)
{
try
{
// your logic goes here
}
catch (Exception ex)
{
//do something with the excpetion
}
}