首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >修复内存泄漏有多重要?

修复内存泄漏有多重要?
EN

Software Engineering用户
提问于 2013-10-13 17:44:19
回答 3查看 2.6K关注 0票数 20

我通过Valgring发现一些GTK+程序泄漏了内存。修复这些漏洞有多重要?我的意思是,这些程序通常运行得很好,但另一方面,人们永远无法确定是否要将泄漏的部分代码复制到其他程序中。我不确定GTK+程序的想法是否能快速工作,因此会有漏洞。

因此,如果我有时在开源程序中发现内存泄漏,我应该修复它吗?或者是否存在效率问题,因此程序员最初的想法是编写一些小的泄漏代码?

EN

回答 3

Software Engineering用户

回答已采纳

发布于 2015-10-02 20:40:42

修复内存泄漏的重要性取决于问题的严重性,还需要做什么才是重要的。我的经验是,对于大多数应用程序来说,小内存泄漏往往是很好的。桌面应用程序会话的生存期通常不足以看到小内存泄漏造成的任何退化。

如果您正在编写一台运行24/7的服务器,那么小内存泄漏会随着时间的推移而增加,并成为一个主要问题。但这也是为什么许多公司安排服务器每天或每周重新启动的原因。查找内存泄漏的工作相对于可能获得的内容而言通常是过度的,因此更容易定期重新启动服务器,并继续进行更重要的工作。

票数 6
EN

Software Engineering用户

发布于 2013-10-13 17:52:58

简而言之,运行程序内存泄漏并不重要;操作系统将在终止时收回所有内容,但它们可能会导致其他资源不被释放。

无论短时间的运行是相对的,泄漏可能会在几个小时内失控,或者在几个星期内不被注意到。

我的建议是在跟踪器中设置一个bug,如果主管关心的话,他会修复它。

泄漏的类型也很重要。泄漏的分配可能是一次性分配,开发人员故意依赖操作系统进行清理。这将给出一个假阳性的英勇。

票数 36
EN

Software Engineering用户

发布于 2017-12-09 04:30:55

FWIW,如果用户报告了我工作的应用程序中的漏洞,我会非常倾向于修复它(特别是如果他们在bug报告中包含了修复代码!)也就是说,如果泄漏很小,而且其他问题更加紧迫(例如,频繁发生的崩溃bug ),这种情况可能不会立即发生。但我绝对会感激的,并努力最终修复它。你绝对应该让他们知道。他们要么会感激它并努力去修复它(很可能),要么他们不会在意它,而它只会花费你一些时间。

票数 0
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/214319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档