アプリケーションの「保存」機能にシリアル化を使用しています。しかし、データが大きすぎる (15 MB 以上) と、OutOfMemory 例外が発生し始めます。
非常に多くのオブジェクトがあり、それらは他の小さなオブジェクトと接続されています。これにより、メモリに保持される処理能力とデータが過剰になっていると思います。
私のコードはこれに基づいており、ほぼ同じです:
http://www.codeproject.com/KB/vb/TreeViewDataAccess.aspx
編集 :
カスタムのシリアライゼーションは使用しません。すべて [Serialization] 属性によって行われます。一部のフィールドを除く。
非常に多くのオブジェクトとカスタム クラスをシリアル化します。ディクショナリ、構造、およびその他のものが多数含まれています。
ファイルにシリアル化します。
XmlSerializer を使用します
PS 私は 4 GB の物理メモリを持っています。
解決
回答のおかげで、私の問題は XmlSerializer にあることがわかり、それを取り除きました。バイナリ シリアライゼーションは、取得したデータで問題なく動作しています。