Dispose与内存泄漏

原创 2006年06月06日 11:26:00

windows任务管理器检查,以及MemProf檢查,發現Dispose函数必须传入特定的类型才能完全释放,不能简单的使用pointer来释放。

如:

PrecordEntity=^TRecordEntity;

TrecordEntity=record

  ID:integer;

Name:string;

End;

Procedure Tform1.Button1Click(Sender:Tobject);

Var

  vEntity:PrecordEntity;

Begin

  New(vEntity);

  TreeView1.Add.Data:=vEntity;

 

End;

Procedure Tform1.Form1Destroy(Sender:Tobject);

Var

  I:integer;

Begin

  For i:=0 to TreeView1.Items.Count-1 do

    Dispose(TreeView1.Items[i].Data);

End;

红色的地方必须改为Dispose(PRecordEntity(TreeView1.Items[i].Data));

相关文章推荐

MemLeak内存泄漏检测工具

  • 2013年12月26日 14:06
  • 14KB
  • 下载

.NET简谈互操作(四:基础知识之Dispose非托管内存)

我们继续.NET互操作学习。前一篇文章中我们学习了基础知识中的DllImport关键特性;我们继续学习基础知识中的内存释放相关技术;在托管与非托管内存之间,是不允许直接调用进行相互操作的,这点我相信稍...

有关android 內存泄漏的问题

  • 2012年11月24日 14:12
  • 80KB
  • 下载

内存泄漏检查类

  • 2015年12月02日 22:26
  • 2KB
  • 下载

WKWebView中MessageHandler的内存泄漏问题解决过程

背景项目中使用了WKWebView替换了之前的UIWebView,牵扯到Hybird开发,我们需要和H5交互,所以用到了WKWebViewConfiguration 中的 WKUserContentC...
  • wxs0124
  • wxs0124
  • 2017年10月31日 13:52
  • 2424

Android内存泄漏案例分析

  • 2015年08月31日 09:47
  • 949KB
  • 下载

理解并解决IE的内存泄漏模式

转载:http://damoqiongqiu.iteye.com/blog/794468 IE设计模式脚本Web应用服务器 Web开发者的进化       过去,内存溢出并没有给Web开发...
  • xyun52
  • xyun52
  • 2011年08月31日 09:06
  • 383

如何解决Java内存泄漏

  • 2015年09月22日 16:45
  • 335KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Dispose与内存泄漏
举报原因:
原因补充:

(最多只允许输入30个字)