gpt4 book ai didi

c++ - 我的文本编辑器应用程序是否存在内存泄漏?为什么它消耗的内存比记事本多 3 倍

转载 作者:行者123 更新时间:2023-11-30 03:04:32 25 4
gpt4 key购买 nike

我正在编写文本编辑器应用程序。作为一项实验,我运行了该应用程序并在执行不同操作时在任务管理器上监控其内存使用情况。

  • 当我第一次启动该应用程序时,它使用了 3000 kB。

  • 当我输入时,它大致保持不变

  • 当我点击保存时,它猛增到 9000kb

  • 然后它一直保持在 8500kb(它没有回落到 3000kb)

这是内存泄漏造成的吗?我有点困惑,因为我观察到记事本有类似的行为。

  • 启动:1500kb
  • 节省:6000 kb
  • 保存后,内存保持在5000kb左右

另外,为什么我的应用程序占用的内存比 Notepad.exe 多 3 倍,什么样的事情会导致这种情况?我应该担心吗?

最佳答案

首先,您想知道内存的实际使用位置。有很多复杂的程序可以进行内存分析/分析,但如果您想要比任务管理器更详细但仍然相当简单和免费的东西,Sysinternals vmmap 是很棒的。

http://technet.microsoft.com/en-us/sysinternals/dd535533

正如其他人所提到的,保存可能会导致其他库被拉入。文本本身也会增加您的内存使用量。 VMMap 将帮助您确定多少是您的,多少是其他的。然后你可以看看你的部分是否真的随着时间的推移而大幅增长。如果您不打算使用内存分析器,您可能需要大量时间进行压力测试以真正查看它是否正在泄漏内存,否则泄漏可能不会大到足以真正容易注意到的程度。

关于c++ - 我的文本编辑器应用程序是否存在内存泄漏?为什么它消耗的内存比记事本多 3 倍,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8530921/

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