gpt4 book ai didi

memory-leaks - 小内存泄漏是否更重要?

转载 作者:行者123 更新时间:2023-12-03 10:05:38 25 4
gpt4 key购买 nike

现在所有 PC 上的 RAM 通常都是千兆字节,我是否应该花时间寻找程序中可能存在的所有小(非增长)内存泄漏?我说的是那些可能小于 64 字节的漏洞,甚至是一堆只有 4 字节的漏洞。

其中一些很难识别,因为它们不在我自己的代码中,但可能在第三方代码或开发工具的代码中,我什至可能无法直接访问源代码。在这些情况下,将涉及与这些产品的供应商进行长时间的沟通。

我在这里看到了第一个内存泄漏问题:Are memory leaks ever ok?到目前为止,该问题的第一个答案是 85 次,是:不。

但在这里我说的是可能需要大量调试、研究和沟通才能追踪的小泄漏。

我只是在谈论一个简单的桌面应用程序。我知道在服务器上运行的应用程序必须尽可能紧凑。

所以我真正要问的问题是,如果我知道我有一个程序泄漏,比如每次运行 40 个字节,那有关系吗?

A Single Drip
(来源:beholdgenealogy.com)

另请参阅我的后续问题:What Operating Systems Will Free The Memory Leaks?

后记:我刚买了EurekaLog用于我的程序开发。

我找到了an excellent article by Alexander ,EurekaLog的作者(谁应该知道这些事情),关于捕捉内存泄漏。在那篇文章中,亚历山大非常简洁地回答了我的问题:

While any error in your application is always bad, there are types of errors, which can be not visible in certain environments. For example, memory or resources leaks errors are relatively harmless on client machines and can be deadly on servers.

最佳答案

这完全是个人决定。

但是,如果:

So the question I am really asking is, if I know I have a program that leaks, say 40 bytes every time it is run, does that matter?



在这种情况下,我会说不。程序终止时内存将被回收,所以如果它只泄漏 40 个字节 一次在可执行文件的运行期间,这实际上是没有意义的。

但是,如果它重复泄漏 40 个字节,则每次执行某些操作时,这可能更有意义。应用程序运行的时间越长,它就变得越重要。

不过,我想说的是,修复内存泄漏通常是值得的,即使泄漏是“毫无意义的”泄漏。内存泄漏通常是一些潜在问题的指标,因此了解和纠正泄漏通常会使您的程序随着时间的推移更加可靠。

关于memory-leaks - 小内存泄漏是否更重要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1719267/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com