1

アプリケーションを正しく閉じることはどれほど重要ですか?
つまり、Disposeすべての破棄可能なオブジェクトでプロパティを呼び出し、すべてのワーカー スレッドに作業を終了するように通知します (そして、終了するのを待ちます)。

私はこれらのことに関する悪い習慣について読んでいますが、何がうまくいかないかについての具体的な例はめったに見ません.

Q:次のいずれかまたはすべてを実行すると、問題が発生する可能性がありますか?

  1. Dispose使い捨てオブジェクトを呼び出さない。(プロセスが終了した後でもメモリリークが発生する可能性はありますか?)
  2. を呼び出してスレッドを終了しThread.Abort()ます。(潜在的に何もできないという事実を無視します。)
  3. メイン スレッドやワーカー スレッドがまだ作業を完了していないときに、Application.Exit()またはを呼び出して WinForms アプリケーションを終了する。Environment.Exit(0)

編集:このアプリケーションは、他のアプリケーションから独立して完全に単独で実行するように設計されており、それに直接依存する他のアプリケーションもないと仮定しましょう。

4

1 に答える 1

2

リークまたはより広範なシステムの問題に関する限り、上記のどれも重要ではありません。

しかし、多くの場合、悪いパターンや習慣は、コードのクライアントが追加されたり、時間の経過とともに他の調整が加えられたりするなど、予期しない他の方法であなたを悩ませます.

于 2012-05-06T01:13:46.080 に答える