From afbf0a56dc59c58b5485ad8867551ccaeca8647c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oguzhan=20Acikg=C3=B6z?= Date: Tue, 2 Mar 2021 11:00:13 +0300 Subject: [PATCH] to let it work simultaneously, added a lock object --- SimpleLogger/Logging/Handlers/FileLoggerHandler.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/SimpleLogger/Logging/Handlers/FileLoggerHandler.cs b/SimpleLogger/Logging/Handlers/FileLoggerHandler.cs index 72d04ef..a720917 100644 --- a/SimpleLogger/Logging/Handlers/FileLoggerHandler.cs +++ b/SimpleLogger/Logging/Handlers/FileLoggerHandler.cs @@ -26,7 +26,7 @@ public FileLoggerHandler(ILoggerFormatter loggerFormatter, string fileName, stri _fileName = fileName; _directory = directory; } - + private static readonly object Sync = new object(); public void Publish(LogMessage logMessage) { if (!string.IsNullOrEmpty(_directory)) @@ -35,9 +35,11 @@ public void Publish(LogMessage logMessage) if (!directoryInfo.Exists) directoryInfo.Create(); } - - using (var writer = new StreamWriter(File.Open(Path.Combine(_directory, _fileName), FileMode.Append))) + lock (Sync) + { + using (var writer = new StreamWriter(File.Open(Path.Combine(_directory, _fileName), FileMode.Append))) writer.WriteLine(_loggerFormatter.ApplyFormat(logMessage)); + } } private static string CreateFileName()