首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >德尔福Spring4D IList内存溢出

德尔福Spring4D IList内存溢出
EN

Stack Overflow用户
提问于 2015-07-22 09:04:51
回答 1查看 517关注 0票数 5

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

我有一个列表IList,在我的应用程序运行期间,我多次填充这个列表。所以,两三个小时后,我的列表出现了内存溢出。

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

代码语言:javascript
复制
  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()方法没有释放内存,所以每次我填写我的列表时,我的应用程序的内存使用情况如下:(

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-22 10:02:43

您的列表没有释放TVisitor实例。

Create是这样的:

代码语言:javascript
复制
TCollections.CreateList<TVisitor>(True);
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31558648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档