Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by jbg,
18. Dez 2003
Natürlich. Schau dir einfach mal an, wie Borland das bei TStringList/TList mit Capacity gelöst hat. Einfach mal die gesamte Classes.pas nach Capacity durchsuchen. Dort wirst du auch eine schöne Formel finden, die sehr effektiv ist.
Da TStringList/TList noch aus Delphi 1 Zeiten stammen, wo dynamischen Arrays noch nicht vom Compiler unterstützt wurden, hat Borland einfach die "alte Art" der...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by jbg,
18. Dez 2003
Genau. Borland kennen ihren Speichermanager und haben die Mishandlung auch umgangen.
Das solltest du auch tun. Vielleicht fällt dir dann die Eigenschaft Capacity auf.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by jbg,
18. Dez 2003
Das ist mehr eine Stärke des Delphi-Speichermanagers, die sich nur bei falscher Verwendung eben stark ins negative wendet.
Der Speicher wird schon freigegeben. Wobei er aber nicht an Windows-Speichermanager, sondern an den Delphi-Speichermanager geht, der sich die Adresse merkt um neue Anforderungen viel schneller zu verarbeiten als es der Windows Speichermanager kann.
Du kannst den...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by jbg,
18. Dez 2003
Aber das bisschen ist schon sehr ausschlaggebend.
Das ist nicht das Problem.
Theoretisch werden die 20000 Bytes auch nur reserviert. Praktisch wird Windows aber der Speicher in nicht geringen Mengen entzugen.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by jbg,
18. Dez 2003
Na dann viel Spaß mit dem sagenhaft geringen Speicherverbrauch von 200 MB für 5000 Elemente vom Typ Integer.