アプリケーションを正しく閉じることはどれほど重要ですか?
つまり、Dispose
すべての破棄可能なオブジェクトでプロパティを呼び出し、すべてのワーカー スレッドに作業を終了するように通知します (そして、終了するのを待ちます)。
私はこれらのことに関する悪い習慣について読んでいますが、何がうまくいかないかについての具体的な例はめったに見ません.
Q:次のいずれかまたはすべてを実行すると、問題が発生する可能性がありますか?
Dispose
使い捨てオブジェクトを呼び出さない。(プロセスが終了した後でもメモリリークが発生する可能性はありますか?)- を呼び出してスレッドを終了し
Thread.Abort()
ます。(潜在的に何もできないという事実を無視します。) - メイン スレッドやワーカー スレッドがまだ作業を完了していないときに、
Application.Exit()
またはを呼び出して WinForms アプリケーションを終了する。Environment.Exit(0)
編集:このアプリケーションは、他のアプリケーションから独立して完全に単独で実行するように設計されており、それに直接依存する他のアプリケーションもないと仮定しましょう。