我有测试申请:
http://www.mediafire.com/download/y5nxo6esifys4h0/LeakMemLLS.rar
它由2页组成:
当我多次转到ListItems页面并返回到主页时。记忆增加了。
有人知道问题出在哪里吗?
谢谢。
发布于 2013-07-02 12:10:31
当您从PhoneApplicationPage导航回来,然后再导航到它时,运行时会创建它的一个新实例。因此,这种内存会增加您所看到的。通常情况下,这是可以的,因为垃圾收集器将在必要时回收未使用的实例。
发布于 2013-07-05 09:52:49
每次到达任何页面的onNavigateTo()时,都必须清除堆栈,所有页面都在堆栈中维护,并且GC.Colect()无法删除堆栈。
int a = NavigationService.BackStack.Count();
while (a > standerdCount)
{
this.NavigationService.RemoveBackEntry();
a = NavigationService.BackStack.Count();
}standerdCount是应用程序第一次到达页面时的堆栈计数。
或者,您可以在从NavigationService.GoBack()页面导航到MainPage时使用ListItem。
https://stackoverflow.com/questions/17424588
复制相似问题