Ich verwende IList aus dem ausgezeichneten Delphi-Framework Spring4D von Stefan Glienke.Delphi Spring4D IList Speicherüberlauf
Ich habe eine Liste IList und ich fülle diese Liste viele Male während meiner Anwendung wird ausgeführt. Also, nach zwei oder drei Stunden habe ich einen Speicherüberlauf meiner Liste. Diese
ist, wie ich meine Liste zu füllen:
list := TCollections.CreateList<TVisitor>;
for i := 0 to dataSet.RecordCount - 1 do begin
item := TVisitor.Create();
item.Surname := dataSet.FieldByName ('firstname').AsString;
item.Name := dataSet.FieldByName ('secondname').AsString;
item.Patronymic := dataSet.FieldByName ('thirdname').AsString;
item.CardNumber := dataSet.FieldByName ('cardnumber').AsString;
list.Add (item);
dataSet.Next();
end;
Die Clear() -Methode befreit keinen Speicher, so dass jedes Mal, wenn ich fülle meine Liste der Windows-Task-Manager inc Speichernutzung meiner Anwendung :(.
OMG, es ist so einfach! Danke Stefan. Jetzt funktioniert es perfekt. – Aptem