如何调试Windows Phone上的内存不足

我在c#中制作WP8图像处理应用程序,并且遇到了一些内存问题。

如果我离开应用程序,并导航回了很多次,我的内存耗尽(例如Home – > back – > home – > back …)。

我想知道如何调试这个问题? 我正在尝试尽可能多地清理内存(使用Dispose / setting to null),但它无法正常工作。

我该如何调试? 有没有办法找出内存是如何使用的?

检查这个问题的答案:

Windows Phone内存配置文件

Windows Phone SDK附带了一个用于内存消耗的分析器,以及安装SDK后Visual Studio中可用的其他内容。

或者,这是MSDN文章的直接链接:

http://msdn.microsoft.com/en-us/library/hh202934%28v=vs.92%29.aspx

更新:

看起来这个问题是针对WP7的,所以它可能适用也可能不适用。 但是,我发现了一篇适用于WP8和WP7的文章:

http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202934(v=vs.105).aspx

lhan16的答案是现货。

您需要做的是使用内存分析并定期检查内存堆,以查看不应该分配的内容。 这至少可以帮助你缩小谁可能是你的内存泄漏的罪魁祸首。 我写了一篇文章,其中包括一个存储太多Byte []的简单示例以及如何使用Memory Profiling工具找到它们@ http://www.developer.nokia.com/Community/Wiki/Techniques_for_memory_analysis_of_Windows_Phone_apps#Profiling