我有一个Windows 7.5 / Silverlight应用程序。
每个页面有4-5张图片,4-5个故事板动画和2个文本块.它也有2-3 soundEffects.用户可以从page1导航到第15页。当我到达第10页时,内存消耗就超过了90 is,这就是限制。
我读过这样的文章:http://windowsteamblog.com/windows_phone/b/wpdev/archive/2012/02/01/memory-profiling-for-application-performance.aspx,但我无法确定我的应用程序到底出了什么问题。
我想推动这个应用程序作为测试版尽快,但它是失败的峰值内存消耗测试,当我运行市场测试工具包。
还有其他的指针或资源吗?谢谢。
添加了图片:有18个网格实例,即每页一个。即使我已经离开页面,也可以在内存中安装一个网格吗?


当内存超过90 my时,更新了- Profiler快照:正如我所注意到的,我的每个页面都在内存中,并且不确定46个网格实例来自何处。当我移到下一页时,我还添加了GC.Collect。不确定这是否重要。

更新了 -Link,以便为允许转到下一页的控件编写代码:http://pastebin.com/ZnBaWfZU
发布于 2012-06-04 21:05:21
我不得不重新工作我的导航,因为每一页都落在后面,它占用了记忆。
以下是我做过的几件事:
1:在OnNavigateFrom中,我必须停止所有动画并将它们设置为空。对于所有的SoundEffects来说都是一样的。处置了SoundEffectInstances。
2:在OnNavigatedTo中,我手动calle NavigateService.RemoveBackEntry()从后台删除页面,然后调用GC.Collect()。
希望这能有所帮助。如果使用上述解决方案有什么问题,请随意评论。
https://stackoverflow.com/questions/10769375
复制相似问题