Speicherbedarf während Instanziierung großer /komplexer Klassen



  • Hallo Leute,

    ich habe eine Konfiguationprogram in dem System projektiert werden können. Das jeweilige dadurch entstehende Konfigurationsmodell wird als riesen "Klasse" via CodeDome in einer Assembly abgelegt. Nun diese Klasse kann so nun mal 1-2 MB groß werden.

    Wird diese Klasse instanziert, bekomme ich ab und an eine OutOfMemoryException (während der Instantiierung). Im Taskmanager sehe ich auch wie der Speicher dabei bis zu 900MB ansteigt. Danach geht er wieder zurück.

    Nun wie könnte ich das Probleme lösen!? Ich weiß man doof in den Raum gestellt gell:) 😃 😃

    Wie könnte ich das tunt, damit die Klasse vll. schritt für schritt instanziiert wird?

    grüße an alle)



  • Ich verstehe nicht ganz. Wie sehen denn die "Konfigurationsklassen" in etwa aus? Und wieso musst du für jedes System eine neue Klasse generieren und in eine Assembly schreiben?



  • Ja das is etwas schwer zu erklären..

    Im genauen is es so, dass eben eine Systemkonfiguration als model in einem Konfigurationstool angelegt wird, danach wird eben eine "klasse" daraus erstellt bzw. kompiliert. So eine Modell bzw. deren Knoten haben diverse Eigenschaften, welche dann in diese Klassen als Properties erzeugt werden etc.

    Gleichzeitige können dann WPF Controls erzeugt werden, welche dann Getypted Objekte disee Klasse verwenden können und auf Definierte Properties der klasse gebunden werden kann etc.

    Das ganze ist leider so historisch gewachsen, würde es evtl. auch anders machen.. aber bevor ich da alles umschmeißen, dachrte ich mir dass es vll. eine andere Lösung gibt.

    Das Problem ist einfach dass das erzeugen eines Objekt aus einer Konfigurationklasse "während" der erzeugen vieel Speicher braucht 👎 😞


Log in to reply