Apt*_*tem 5 memory delphi list overflow spring4d
我正在使用来自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;
Run Code Online (Sandbox Code Playgroud)
Clear()方法不释放内存,所以每次我填写我的列表Windows任务管理器inc我的应用程序的内存使用情况:(
您的列表不会释放TVisitor实例.
创建是这样的:
TCollections.CreateList<TVisitor>(True);
Run Code Online (Sandbox Code Playgroud)