gpt4 book ai didi

list - Delphi Spring4D IList内存溢出

转载 作者:行者123 更新时间:2023-12-03 15:09:05 28 4
gpt4 key购买 nike

我正在使用来自 Stefan Glienke 的优秀 Delphi 框架 Spring4D 的 IList。

我有一个列表 IList,并且在应用程序运行期间我多次重新填充此列表。因此,两三个小时后,我的列表内存溢出。

这就是我填充列表的方式:

  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;

Clear() 方法不会释放内存,因此每次我填写列表时,Windows 任务管理器都会包含我的应用程序的内存使用情况:(

最佳答案

您的列表不会释放 TVisitor 实例。

创建是这样的:

TCollections.CreateList<TVisitor>(True);

关于list - Delphi Spring4D IList内存溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31558648/

28 4 0