我正在使用以下内容登录到文本文件。Log() 是从我的代码中由第 3 方 Dll 触发的事件中调用的。第 3 方 Dll 创建多个线程,因此它可以触发每个线程内的事件。
我的问题是,当我的代码中触发事件以执行以下日志记录时,我是否可能会提出一个问题,即有两个事件试图同时写入日志文件并且锁定或事件一次发生一个?
private void Log(string message)
{
if(!Directory.Exists(AssemblyDirectory + @"\Logs"))
Directory.CreateDirectory(AssemblyDirectory + @"\Logs");
using (StreamWriter sw = new StreamWriter(AssemblyDirectory + @"\Logs\" + DateTime.Today.ToString("yyyyMMdd") + ".log", true))
{
sw.AutoFlush = true;
sw.Write(message);
}
}