【问题标题】:observing memory allocation in Xcode Ansi C在 Xcode Ansi C 中观察内存分配
【发布时间】:2013-09-18 13:01:45
【问题描述】:

我想在 C 程序运行时观察动态分配的内存,并检测内存泄漏。我的程序根据用户输入分配内存。我现在正在寻找可能有帮助的教程,但问题是我发现的所有内容都不是基于用户输入!我想插入输入并同时运行“仪器”..有什么建议吗?

【问题讨论】:

  • 你能显示一些代码吗?
  • 我可以,但没关系..代码有一个二叉树,每个叶子都是根据用户输入动态分配的,当然还有静态数组等等跨度>
  • 在每次树操作后打印整个内存/树的内容。
  • 抱歉不明白..你能说得更具体点吗?
  • 您可以使用Instruments 来协助查找您的 Mac 应用程序上的内存泄漏。它应该随您的 Xcode 发行版安装一起提供。

标签: c xcode memory input memory-leaks


【解决方案1】:

我建议您观看 WWDC 2012 视频iOS App Performance: Memory。它提供了关于内存类型、可能出现的问题、需要注意的编码约定、如何使用 Instruments 来识别问题等方面的出色入门。这是一个很好的起点。

仪器中的“泄漏”工具无法识别大量泄漏。查看“分配”工具和其中隐藏的一些重要功能,例如堆快照(在该视频中讨论)或选项 - 在分配工具图中拖动。另外,请确保您使用静态分析器(Xcode 中“产品”菜单上的“分析”,或 command+shift+B) 仅通过分析您的代码就可以发现大量问题。

【讨论】:

  • +1 我不知道静态分析器如此彻底。只是为了它,我把我认为是一些非常微妙的错误扔到我的身上,并且很震惊它可以很好地识别其中的大部分。
猜你喜欢
  • 2016-10-25
  • 2012-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-12
  • 2012-06-27
  • 1970-01-01
  • 2020-09-28
相关资源
最近更新 更多