我对系统内存有疑问。 我在我的应用程序中集成了一个Web浏览器。在网上冲浪,内存使用量越来越大......显然它是Windows手机在页面浏览期间管理内存(至少对于浏览器而言),所以我不应该有任何内存异常。当我将视图留在浏览器上时会出现问题:我的内存使用量仍然很高。我说的是50-60MB或90/95 MB(在某些网站上)。我试图在退出时执行内存清理而没有任何成功...如果我以这种方式使用应用程序,我肯定会陷入内存异常,因为内存使用量永远不会下降
protected async override void OnNavigatedFrom(NavigationEventArgs e)
{
await Browser.ClearInternetCacheAsync();
await Browser.ClearCookiesAsync();
ContentPanel.Children.Remove(Browser);
GC.Collect();
GC.WaitForPendingFinalizers();
GC.Collect();
}
有没有人能解决这个问题? 请让我知道
答案 0 :(得分:0)
您可以将代码从OnNavigatedFrom复制到OnNavigatingFrom,并在应用的各个阶段复制,就像在冲浪时一样,而不是在最后阶段,即OnNavigatedFrom,因为这只是该控件的问题。
也可以在每次网络浏览器会话之前和之后尝试调用await new WebBrowser().ClearCookiesAsync()
。