AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Speicherproblem mit Dispose

Ein Thema von me2u · begonnen am 3. Mai 2007 · letzter Beitrag vom 3. Mai 2007
 
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#5

Re: Speicherproblem mit Dispose

  Alt 3. Mai 2007, 09:43
Hallo,
Zitat von akrichel:
(Tip: wenn man in einer Stringliste nicht clear aufruft sondern die Elemente deleted, dann wird der Speicher auch freigegeben. Delete vom letzten Element an bietet sich aus Geschwindigkeitsgründen an).
Das ist so nicht ganz richtig. Die Methode TStringList.Clear sieht folgendermaßen aus:
Delphi-Quellcode:
  if FCount <> 0 then
  begin
    Changing;
    Finalize(FList^[0], FCount);
    FCount := 0;
    SetCapacity(0);
    Changed;
  end;
Es werden also sowohl die Strings als auch die Liste freigegeben. Das Problem ist eher, dass TMemo.Lines keine TStringList ist, sondern eine eigene Implementierung der abstrakten Klasse TStrings. TMemo ist nämlich nur ein Wrapper um ein Windows-Control, welches den Speicher für seinen Inhalt selbst verwaltet.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz