社区
Delphi
帖子详情
对象释放。。。什么是内存泄露?
wwzhong1
2004-04-30 05:45:19
我自定义的类。用它创建对象后。使用完毕,没有去释放它。有人跟我说‘程序关闭时会把这个对象的内存空间释放掉?’。但是从书上知道。自己创建的对象要自己释放。否则就是内存泄漏了。到底是谁对呀?
...全文
78
13
打赏
收藏
对象释放。。。什么是内存泄露?
我自定义的类。用它创建对象后。使用完毕,没有去释放它。有人跟我说‘程序关闭时会把这个对象的内存空间释放掉?’。但是从书上知道。自己创建的对象要自己释放。否则就是内存泄漏了。到底是谁对呀?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fj218
2004-04-30
打赏
举报
回复
最好是手动释放,程序关闭虽然能够释放,但不一定都能全部安全释放。
所以自己创建的自己一定释放,这也是良好的习惯。
Bellamy
2004-04-30
打赏
举报
回复
最好是你自己创建了,就要把它释放掉!
lijinghe1
2004-04-30
打赏
举报
回复
如果写服务程序,每一次的内存分配都应有一个try finally end结构去释放它。由对象的OWNER去释放是很不保险的。一般的MIS系统,差不多就可以了。
whitetiger8
2004-04-30
打赏
举报
回复
都对啊。哈哈。不过关闭程序时,会把内存释放,如果他一直不关闭程序呢?!!
这是一种不好的习惯。!
TomSonChina
2004-04-30
打赏
举报
回复
如果你创建的时候他的所有者是一个对象,那么那个对象释放的时候可以给你释放,但是不推荐这样。
如果你创建的时候没有指定他的所有者,那么你必须自己释放,否则就有内存泄漏Memory Leak
比如:MyObject:=TMyObject.Create(Form1);那么Form1释放时也会释放你的对象(但是不推荐)
MyObject:=TMyObject.Create(nil);是不会释放你的对象的,你必须自己释放
内存泄漏(Memory Leak):
你在程序中分配的内存没有回收回来,导致那块内存被无用的信息永远占用,如果你的程序多次运行,每次都有内存泄漏,则会导致操作系统的可用内存越来越少,从而使你计算机的可用资源越来越少,计算机越来越慢。
比如上面所说的情况就有可能内存泄漏。
rockswj
2004-04-30
打赏
举报
回复
如果创建的对方的owner释放,则对象被释放。
不过真的不好说清楚。最好自己释放。
Erice
2004-04-30
打赏
举报
回复
D 是释放不干净的
aiirii
2004-04-30
打赏
举报
回复
很難說得清楚, 反正,自己創建的, 就自己釋放, 這樣安全點
jinjazz
2004-04-30
打赏
举报
回复
人快走光了..我也匿
fim
2004-04-30
打赏
举报
回复
书上说得对,自己创建的对象要自己释放
静态创建的对象由Delphi负责处理
liyu001xj
2004-04-30
打赏
举报
回复
都是对的,这是不同方面的问题。
jinjazz
2004-04-30
打赏
举报
回复
自己创建的对象要自己释放
好像delphi不会自动回收
wwzhong1
2004-04-30
打赏
举报
回复
争得好累呀?休息几天再回来。
内存泄露
Demo leaky app
1. 使用智能指针:在C++中,智能指针如std::unique_ptr和std::shared_ptr可以自动管理
对象
的生命周期,避免手动
释放
内存。 2. 垃圾回收语言:像Java和Python这样的语言有内置的垃圾回收机制,可以自动回收不再使用的...
SciTech.NET.Memory.Profiler.v4.0.114.安装_注册机
内存泄漏是指程序在申请内存后,无法
释放
已申请的内存空间,一次小的内存泄漏可能不会立即引起问题,但随着时间推移,累积的内存泄漏将消耗大量系统资源,导致程序运行缓慢,甚至崩溃。尤其对于长时间运行的服务或...
什么是内存泄漏?什么是野指针?什么是内存越界?如何避免?
百度百科上的定义:内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未
释放
或无法
释放
,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。 一看定义,坑好像更多了,动态...
什么是内存泄漏?如何避免内存泄漏?
内存泄漏:通常是由于程序的设计问题导致的,比如忘记
释放
已经不再使用的内存,或者引用已不需要的
对象
,使得这部分内存无法被回收。内存溢出:产生通常是因为程序申请的内存超出了系统能够提供的范围,比如试图创建...
什么是
内存泄露
?该怎么排查?Java内存泄漏策略
什么是内存泄漏 内存泄漏:
对象
已经没有被应用程序使用,但是垃圾回收器没办法移除它们,因为还在被引用着。 在Java中,内存泄漏就是存在一些被分配的
对象
,这些
对象
有下面两个特点,首先,这些
对象
是可达的,即...
Delphi
5,928
社区成员
262,931
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章