1

我正在测试我的 wp7 应用程序,它占用了 85MB 的峰值内存,非常接近微软的 90MB 限制。我怎样才能减少内存消耗。

在我的应用程序中。我有一个全景页面和 3 4 个其他页面。在全景页面上,我正在加载联系人并显示在我的长列表选择器中。我检查了配置文件,它在导航上显示了一些警告。如何解决这个问题。什么是该场景中的最佳实践。

=== 更新 ===

  1. 我应该清空我的列表框意味着在 OnNavigatedFrom 事件上将 Null 分配为 Itemsource

  2. 在 OnNavigatedFrom 事件上调用 GC.Collect()

  3. 在 OnNavigatedTo 中,我手动调用 NavigateService.RemoveBackEntry() 以从 backstack 中删除页面,然后调用 GC.Collect()

4

3 回答 3

0

这里有一些提示,您可能会对提示 #5 感兴趣。

于 2012-07-26T12:22:56.317 回答
0

单击此处阅读一篇很好的文章,以解释 Windows Phone 的许多良好做法。(也用于限制内存使用^^)

于 2012-07-26T12:23:01.357 回答
0

我发现使用 Panorama 在内存方面非常昂贵,最终切换到了 Pivot。如果你有这个选项,它可能是你最好的选择。不确定这里是否有任何真正的答案,但这里有一个讨论这个问题的线程。

全景内存使用情况

于 2012-07-26T22:56:09.770 回答