C# 内存泄露 一般都是怎么造成的

jiaoshiyao 2014-09-25 07:53:19
你想不到 做的两个项目 都有内存不释放的漏洞 隔几天 就要重启下
以前老师说 C# 有自己的内存管理机制 但是。。。
我根本想不到 静态事件 会不释放
求老手告诉下 还有什么 东西 会造成不释放啊
...全文
1385 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
失落的神庙 2014-09-26
  • 打赏
  • 举报
回复
引用 6 楼 sp1234 的回复:
有些基本的技术学会了,一大堆繁文缛节的什么概念纠结,就不重要了。否则整天都在讨论“程序员洁癖”,结果是产品质量其实并不高、开发人员反而疲惫不堪。因为概念反复被纠结,因为你没有办法把“能够发现某bug的方法步骤”一闪念创意变成每天可重复执行几百次的可执行代码。 自己搞明白如何写针对两三种“不释放”问题的测试代码,在测试程序运行时可以自动提示.net程序内存溢出,这比刚刚在csdn上的某个引用的、罗列“不释放”概念的文章,要有用多了。
赞。
  • 打赏
  • 举报
回复
有些基本的技术学会了,一大堆繁文缛节的什么概念纠结,就不重要了。否则整天都在讨论“程序员洁癖”,结果是产品质量其实并不高、开发人员反而疲惫不堪。因为概念反复被纠结,因为你没有办法把“能够发现某bug的方法步骤”一闪念创意变成每天可重复执行几百次的可执行代码。 自己搞明白如何写针对两三种“不释放”问题的测试代码,在测试程序运行时可以自动提示.net程序内存溢出,这比刚刚在csdn上的某个引用的、罗列“不释放”概念的文章,要有用多了。
  • 打赏
  • 举报
回复
引用 楼主 jiaoshiyao 的回复:
你想不到 做的两个项目 都有内存不释放的漏洞 隔几天 就要重启下 以前老师说 C# 有自己的内存管理机制 但是。。。 我根本想不到 静态事件 会不释放 求老手告诉下 还有什么 东西 会造成不释放啊
如果你只是应该“想到静态事件会不会释放”,那么你在技术上只是学到了一半 。 由于没有注销事件而造成的内存溢出,这应该写测试程序随时测试出来。而不是靠“是非”理论去维系,不是靠纠结一个个程序员是否完美地、完善地“想到”了它们。 你没有学会产品自动化测试技术,那么就不能保证产品质量。
烈火蜓蜻 2014-09-25
  • 打赏
  • 举报
回复
写了这么多年,就没有遇到过这种问题,可能是与非托管代码打交道比较少吧
yancongmin 2014-09-25
  • 打赏
  • 举报
回复
是不是资源没有处理好了。
AppleII 2014-09-25
  • 打赏
  • 举报
回复
主要是非托管对象未及时释放,比如文件、GDI操作等

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧