Was komisch ist, daß sich der größte Teil wieder verflüchtigt (bis auf 100-200 MB), wenn man Datei > Alle Schließen ausführt
, was also bedeuten würde, daß der Speicher entweder an den Projekten oder an der Projektgruppe hängt.
Der Compiler hat einen eigenen Speichermanager (nicht FastMM), der beim Schließen des Projekts den Befehl bekommt, sämtlichen nicht (mehr) verwendeten Speicher freizugeben. (Das passiert erst seit XE).
Der Compiler hält so ziemlich alle
DCU-Daten, die er einmal gelesen hat im Speicher (
Unit-Cache) und ersetzt sie nur, wenn eine
Unit verändert und neukompiliert wird. Der dabei ggf. freigegebene Speicher landet wieder im Compiler-Speichermanager, der ihn nicht an Windows zurückgibt, womit der
IDE Speichermanager nicht an den Speicher herankommt.
Wenn natürlich im Compiler ein Speicherleck ist, kann der Compiler-Speichermanager auch auf Befehl hin den Speicherblock nicht freigeben, da er ja angeblich genutzt wird.