Problem mit Speicher / Garbage Collector



  • Hallo zusammen,

    in meiner Anwendung wird bei einem Mausklick ein PropertyGrid mit Werten befüllt. Leider ist es aber so, dass bei jedem neuen Befüllen des PropertyGrids der Speicherverbrauch ansteigt. Laut GC::GetTotalMemory(true) ist es der Garbage Collector. Leider hilft ein GC::Collect() und ein darauf folgendes GC::WaitForPendingFinalizers() nicht. Er zwar ein paar Bytes frei, aber bei weitem nicht die Menge die ich erwartet hätte.

    Es geht um einen 3D-Editor, bei dem im PropertyGrid die Eigenschaften eines Objekts angezeigt werden, da manche Objekte recht umfangreich sind, kann es nach einigen Klicks dazu kommen, dass über ein Megabyte speicher verlorengeht.

    Was kann ich tun?

    MfG,

    Nils



  • Einach mal prüfen ob andere objekte zeiger auf deine zu löschende objekte haben, z.b. listen.



  • Der GC übersieht _nichts_. Wenn etwas nicht freigegeben wird, hast du
    - Referenzen darauf
    - es auf dem unmanaged Heap angelegt


Anmelden zum Antworten