アプリケーションの存続期間全体で必要な場合、StreamWriter をどこに配置すればよいですか? デストラクタで破棄しますが、うまくいきますか? AutoFlush
データをフラッシュするために処分する必要があり、msdn からの機能を使用したくありません。"You can get better performance by setting AutoFlush to false, assuming that you always call Close (or at least Flush) when you're done writing with a StreamWriter."
それで、私Dispose
は以下のコードのようにデストラクタに入れるべきですか?
class Log
{
private static StreamWriter swLog = new StreamWriter("logMAIN.txt");
static ~Log()
{
swLog.Dispose();
}
public static void Push(LogItemType type, string message)
{
swLog.WriteLine(type + " " + DateTime.Now.TimeOfDay + " " + message);
}
}
Dispose
iの代わりにupdClose
を呼び出すつもりでしたが、まったく同じことをしているように見えるため、この場合は重要ではありません。