我在這裏有一個小問題。 我寫了一個小的多線程應用程序,它沒有做太多,它只是連接到某些資源, reades幾個字段並將其寫入日誌,就是這樣。 我很想知道是否所有東西都被記錄下來了。 這裏是記錄代碼:多線程的小應用程序和日誌記錄
private TextWriter textWriter;
private TextWriter errorWriter;
public Logger(string filePath, string errorLogFile)
{
textWriter = TextWriter.Synchronized(File.AppendText(filePath));
errorWriter = TextWriter.Synchronized(File.AppendText(errorLogFile));
}
public void WriteToLog(string text)
{
textWriter.WriteLine(text);
}
...
所以當讓說,我有100個線程將這種管理寫入的所有數據記錄還是會跳過一些線程? 我將創建主記錄器的實例,並把它傳遞給執行人:確實發生
for (int i = 0; i < threadNumber; i++)
{
Executor executor = new Executor(logger)
}
考慮使用現有的日誌庫,而不是另起爐竈。 – CodesInChaos 2012-02-03 10:04:45
我建議[NLog](http://nlog-project.org/) – 2012-02-03 10:05:40