0
cバックグラウンドから、私はC#のメモリ管理に関する質問があります。私のクラスの一つは、マップされたクラスのコンテナを保持している:コンテナがクリアされたときにインスタンスによって占有されたメモリは解放されますか?
public class B
{
// some data members, constructors, etc...
}
public class A {
Dictionary<string, B>() m_dictionary;
// other data members
public A() { m_dictionary = new Dictionary<string, B>(); }
// more methods, etc.
public void clearDictionary() { m_dictionary.clear(); }
}
私はclearDictionary()が呼び出されると、ガベージコレクタは、最終的に彼らがない限り、内部の住んでいたBのすべてのそれらのインスタンスによって占められたメモリを解放することを理解し他のどこかで参照されます。メモリが解放されることを確認するために追加チェックを行う必要がありますか?ありがとう