1

いつメモリ管理を行う必要があり、両方のタイプのリソースに対してどのように行うのですか?管理対象リソースと管理対象外リソースのリストは何ですか?本当にメモリリークを心配する必要がありますか?

4

1 に答える 1

5

マネージド リソースは、完全に .NET で記述されたリソースです。通常は従来のメモリ リークの影響を受けませんが、未使用のリソースを逆参照しないことでメモリ リークが発生する可能性があります (最も一般的な理由は、イベント ハンドラの登録を解除しないことです)。

管理されていないリソースは、通常、純粋な .NET ではない (同じプロセスにある) リソースです。例は次のとおりです。

  • COM コンポーネント
  • データベース接続/トランザクション
  • ウィンドウハンドル
  • ファイルシステム ハンドル
  • レジストリ ハンドル
  • ネットワーク接続
  • など...など...

Disposeこれらについては、パターンを正しく実装し、使用後は適切に廃棄する必要があります。

本当にメモリ リークを心配する必要があるのでしょうか。

はい、特に .NET の外に出る場合は、それらについて心配する必要があります。

于 2013-02-17T19:40:57.327 に答える