小编Apt*_*tem的帖子

Delphi Spring4D IList内存溢出

我正在使用来自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我的应用程序的内存使用情况:(

memory delphi list overflow spring4d

5
推荐指数
1
解决办法
437
查看次数

一次编译多个项目时,抛出“ System.OutOfMemoryException类型的异常”

我使用Embarcadero Delphi XE5企业版。我有一个由17个项目组成的项目组。当我在第七个已编译项目IDE之后单击“全部编译”时,抛出异常:

[Fatal Error] Exception of type 'System.OutOfMemoryException' was thrown.
Run Code Online (Sandbox Code Playgroud)

这种错误的原因是什么?如何处理?

delphi out-of-memory delphi-xe5

5
推荐指数
1
解决办法
1605
查看次数

标签 统计

delphi ×2

delphi-xe5 ×1

list ×1

memory ×1

out-of-memory ×1

overflow ×1

spring4d ×1