以下のテキストファイルにログインしています。Log()は、サードパーティのDLLによってトリガーされるコード内のイベント内から呼び出されています。サードパーティのDLLは複数のスレッドを作成するため、各スレッド内でイベントをトリガーできます。
私の質問は、以下のログを実行するためにコード内でイベントがトリガーされると、2つのイベントが同時にログファイルに書き込もうとしていて、ロックまたはイベントが一度に1つずつ発生するという問題が発生する可能性がありますか?
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);
}
}