我的团队正在开发一个 C# ASP.NET Web 应用程序。我决定通过写入错误日志文件来处理错误。
我编写的 log.Error 方法将记录到错误目录中的物理日志文件中。
我认为在执行 log.Error 方法时使用锁来控制线程是合适的,因为我想在每次发生错误时记录错误。
因此,这是我的大多数异常处理的格式:
protected void blahblahCsharpMethodBlahBlah()
{
try
{
blah blah C# code blah blah
}
catch(Exception ex ){
lock (_objectblahblahCsharpMethodBlahBlah)
{
// The following log.Error method that I wrote would log to a physical log file in an error directory.
log.Error(ex.ToString(),
PerlsPivotErrorDirectory,
System.Reflection.MethodBase.GetCurrentMethod().Name,
this.GetType().Name, System.IO.Path.GetFileName(System.Reflection.Assembly.GetExecutingAssembly().Location));
}
}
} // protected void blahblahCsharpMethodBlahBlah()
使用锁来控制线程以便它们以正确的序列化方式执行 log.Error 方法是否正确?