我在这里有一个小问题。 我写了一个小的多线程应用程序,它没有做太多,它只是连接到某些资源, 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