私はX
のオブジェクトをインスタンス化するたびに、このフィールドがロードされるか、またはロードされることに気づいた(メモリの点で)大きなサイズのフィールドメンバy
を持つclass X
を持っています。メモリに再ロードされます。 y
の基礎構造は、約5000kvsを保持するdictionary<string,int>
です。 y
を別の明示的な辞書として宣言する方法はありますか?アプリケーションライフタイム中にそれを生かしておきますか?C#でオブジェクトを存続させている
注意:Xのオブジェクトは実行時に処理することができるので、より正確な質問があります:ディクショナリがクラスの静的メンバーとして宣言されている場合、クラスのオブジェクトがゴミ収集されたか明示的に破壊されたか
静的メンバーは、アプリケーションの有効期間中は生き続ける。フィールドがリロードされたことにどのように気付きましたか? –
どうやってこれを知ることができましたか? 'Xのオブジェクトをインスタンス化するたびに、このフィールドはメモリに読み込まれるか、読み込まれますか?静的フィールドは、初期化されるか、またはその生涯に一度だけロードされます。 – RBT
"私はXのオブジェクトをインスタンス化するたびに、このフィールドがロードされるか、メモリに再ロードされることに気付きました" - あなたのコンストラクタを表示できますか?あなたが 'y = new dictionary 'を持っていれば私は好奇心です。(){etc ..}' –
Quantic