私のクラスの1つは、アプリケーションの実行中に統計を収集し、アプリケーションの終了時にこの統計をディスクに保存します。アプリケーションシャットダウン時に情報をファイルに保存するための正しい方法
~Strategy()
{
foreach(var item in statisticItems)
{
log.WriteLine(item.Text); // log is AutoFlush
}
}
ときデストラクタ私はデバッガの瞬間に私が見ても、私はできない「キャッチ」を期待したログが表示されないしかし:私はそのようなファイルにログを保存しようとしたので、私は私のプログラム内でこのクラスを破壊することはありませんと呼ばれる。
質問:
- デバッガでは、私は、デストラクタが呼ばれた瞬間をキャッチできないのはなぜ?プログラムの終了時にすべてのオブジェクトに対してデストラクタを呼び出す必要はありませんか?
- 自分のものをログに記録するにはどうすればよいですか?
万一、停止ボタンでデバッガをシャットダウンしていませんか? – Blindy
@Blindyいいえ私はちょうどウィンドウを閉じる – javapowered
'戦略'はインスタンス化されていますか?静的クラスですか(静的メソッドのみを使用していますか?)私たちに多くの情報、ユースケース、可能なものを与えてください。問題のフレームワークのバグを割り引くことができます。これはコード内の何かであり、この時点でしか推測できません。 – Blindy