我想在跨线程中写入一个txt文件,但是软件会发出异常,因为多个线程想要同时到达同一个文件。我如何调用Streamwriter以避免异常?这里是我的代码:C#streamwriter invoke
void WriteLog(string LogStr)
{
StreamWriter sw = new StreamWriter("Log.txt", true);
sw.WriteLine(LogStr);
sw.Close();
}
我在线程中调用WriteLog方法。
谢谢。
是否使用类似NLog或log4net之类的东西?这将为你解决这个问题,因为他们处理所有这些复杂性。另外,每次你想记录信息时打开和关闭一个文件将会给你带来很大的麻烦。 – yamen 2012-04-12 07:15:38