ローテーションを追加するファイルにトレースメッセージを書き込むカスタム tracelistener を作成しています (たとえば、ファイル名を毎日変更するなど)。
メソッドのオーバーライドでは、基になるFlush
を呼び出しますが、アプリケーション構成で設定すると、アプリケーションが終了したときに呼び出されません。 Flush
StreamWriter
autoflush='false'
Flush
アプリケーションの終了時にカスタム トレース リスナーをファイナライズする正しい方法はどれですか?
編集:Dispose(bool disposing)
基本TraceListener
クラスはすでに使い捨てパターンを実装しているため、メソッドをオーバーライドしましたが、私が言うことができる限り、メソッドは呼び出されません。明示的なデストラクタを実装すると、デストラクタが呼び出されますが、その時点で、ストリーム参照がまだ有効であると想定するべきではありませんよね?