我想在跨線程中寫入一個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