Wie serialisieren große Objekte .NET? (OutOfMemory-Ausnahmen)

Ich bin mit der Serialisierung, die für die "save" - feature in meiner Anwendung. Aber wenn die Daten zu groß (15 MB) ich fange an, OutOfMemory-exceptions.

Habe ich so viele Objekte, und Sie sind verbunden mit anderen kleinen Objekten, ich denke, das verursacht zu viel Rechenleistung und Daten im Speicher.

Mein code basiert auf diesem, fast die gleichen:

http://www.codeproject.com/KB/vb/TreeViewDataAccess.aspx

Edit :

  1. Ich nicht das verwenden einer benutzerdefinierten Serialisierung, es ist alles selbst gemacht, [Serialization] - Attribute. Mit Ausnahme einiger Felder.
  2. Ich serialisieren so viele Objekte und benutzerdefinierte Klassen. Enthält ein Wörterbuch, Strukturen und paar andere Sachen.
  3. Ich serialisieren in eine Datei.
  4. Benutze ich XmlSerializer

P. S. ich habe 4 GB physischen Speicher.

Lösung

Danke für die Antworten, mein problem war gefunden zu sein, mit XmlSerializer und ich habe, um es loszuwerden. Binäre Serialisierung ist gut arbeiten mit den Daten die ich habe.

Welche Art von Objekt handelt es sich? Und was Serialisierungs-framework verwenden Sie? Ist die Daten-Struktur? oder ein Diagramm? (d.h. gibt es mehr als eine route zu einem beliebigen Objekt)?
Es ist so viele verknüpfte Objekte, darunter viele benutzerdefinierte Klassen sowie ein treeview 🙂
Ich bin nicht mit einem speziellen framework verwenden .NET-Serialisierung (.NET Framework 2.0).
aber Sie Kreuz verbunden... das hat Auswirkungen...
Gute Frage, Sie könnten tatsächlich. Ich habe den Faden verloren. Tun .NET duplizieren Sie Sie stattdessen, herauszufinden, links?

InformationsquelleAutor dr. evil | 2009-04-02

Schreibe einen Kommentar