免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: ziffer
打印 上一主题 下一主题

[C] 程序结束时释放内存的必要性 [复制链接]

论坛徽章:
0
31 [报告]
发表于 2009-06-16 08:55 |只看该作者
如果想写有移植性的代码的话,内存一定要好好释放的
不是所有操作系统都会在进程结束之后收回内存的
不是所有机器都有操作系统的... ...

论坛徽章:
0
32 [报告]
发表于 2009-06-16 09:12 |只看该作者
原帖由 zx_wing 于 2009-6-14 11:36 发表

这我认为不会。至少现在还没有看到有内核数据结构因进程异常退出而没释放导致的内存泄漏,也可能是我不知道。
版主如果有这方面的例子请发出来讨论一下,我认为不会。

此外,既然是程序“异常退出”,这表 ...

我遇到过,异常退出以后 /var/lock/LCK..ttyS0 一直不会释放,除非重启。貌似还是gnu下面的一个项目的代码干的,但是手头没有调用的源代码,不知道具体怎么形成的。

论坛徽章:
0
33 [报告]
发表于 2009-06-16 13:14 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
34 [报告]
发表于 2009-06-16 14:52 |只看该作者
还是手动释放的好,当系统内存很少,如只有4M时(手机等),内存泄露很快会导致内存耗尽,最终系统崩溃重启。如果是实际生活中某个关键时刻,会很危险(如陪女友电话聊天时,突然手机系统重启,轻则自己再打过去赔礼道歉割地赔款,重则要跪搓衣板。。。。。)

[ 本帖最后由 llsshh 于 2009-6-16 14:54 编辑 ]

论坛徽章:
3
白羊座
日期:2013-11-05 12:59:14子鼠
日期:2014-01-29 14:14:50戌狗
日期:2014-02-11 16:21:45
35 [报告]
发表于 2009-06-17 11:47 |只看该作者
31楼说得很对

论坛徽章:
0
36 [报告]
发表于 2009-06-17 12:47 |只看该作者
很多问题都是有特定针对性的。

不能说,OS设计中保证程序挂了就释放所有资源,OS也是写出来的,难保bug之类。

论坛徽章:
0
37 [报告]
发表于 2009-06-17 15:53 |只看该作者
没有必要再去释放了吧,

论坛徽章:
0
38 [报告]
发表于 2009-06-17 15:54 |只看该作者
原帖由 Strange 于 2009-6-16 08:55 发表
如果想写有移植性的代码的话,内存一定要好好释放的
不是所有操作系统都会在进程结束之后收回内存的
不是所有机器都有操作系统的... ...

不是所有机器都有操作系统的.说的好

论坛徽章:
0
39 [报告]
发表于 2009-06-17 16:18 |只看该作者

回复 #1 ziffer 的帖子

能释放就释放吧, 怎么说呢
对自己的数据负责, 体现了个人的职业素质, 你也不希望别人拿着你的程序说三道四吧

论坛徽章:
0
40 [报告]
发表于 2009-06-17 22:24 |只看该作者
我想,如果没有操作系统,那还需要释放么?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP