我的問題與使用StreamWriter寫入數據的基本理解有關。 如果考慮下面的代碼:
StreamWriter writer = new StreamWriter(@"C:\TEST.XML");
writer.WriteLine("somestring");
writer.Flush();
writer.Close();
當作家對象初始化,與文件名,所有它是一個指向該文件。
但是,當我們向編寫器對象寫入任何字符串時,它是否實際加載整個文件,讀取其內容,將字符串追加到末尾,然後關閉句柄?
我希望它不是一個愚蠢的問題。 我問這是因爲我遇到了一個應用程序,它可能會每半秒鐘對一個文件進行頻繁寫入,並且文件大小增加到大約1 GB,並且它仍然繼續寫入文件。 (日誌記錄)
您是否認爲這可能導致CPU使用率爲100%?
如果我的問題不清楚,請讓我知道嗎?
在此先感謝。
除非有很多線程試圖寫入同一文件否,否則不會導致100%的CPU使用率。 – 2010-11-11 23:30:00
即使它正在加載整個文件,我不會期望100%的CPU使用率,因爲我認爲它是IO限制的 – 2010-11-11 23:41:56