导航到页面会增加内存使用量 Windows Universal 8.1

2024-04-05

我正在创建一个 Windows Universal 8.1 应用程序。每次我导航到一个页面,然后导航回来,然后再次导航到该页面,该页面的新实例就会保存在内存中。显然,垃圾收集器会在一段时间后释放内存,但是如果不需要,我宁愿不使用内存。有没有办法回收或处理这些页面?


在Windows Uriversal App中,我们可以使用导航缓存模式 to recycle页面。它可以在页面的构造函数中设置。比如有一个我们要回收的MainPage:

public MainPage()
{
    this.InitializeComponent();

    // Set the NavigationCacheMode of Page to Enabled. 
    // The page is cached, but the cached instance is discarded when the size 
    //     of the cache for the frame is exceeded.
    this.NavigationCacheMode = Windows.UI.Xaml.Navigation.NavigationCacheMode.Enabled;

    // OR Set the NavigationCacheMode of Page to Required. 
    // The page is cached and the cached instance is reused for every visit 
    //     regardless of the cache size for the frame.
    // this.NavigationCacheMode = Windows.UI.Xaml.Navigation.NavigationCacheMode.Required;
}

设置完成后,我们可以返回MainPage,无需重新创建它。

如果 NavigationCacheMode 设置为Disabled。页的内存将是released when 导航自从中。

有一个与SO类似的问题:返回 Windows 8 C# 应用程序时,页面构造函数再次被调用 https://stackoverflow.com/questions/12633758/page-constructor-gets-called-again-when-navigating-back-in-windows-8-c-sharp-app

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

导航到页面会增加内存使用量 Windows Universal 8.1 的相关文章

  • 取消后调用 boost::asio 异步处理程序没有错误

    我的代码在单个线程中使用 boost asio 和 io service 来执行各种套接字操作 所有操作都是异步的 每个处理程序都依赖于boost system error code 特别boost asio error operation
  • 如何使用命令行压缩文件?

    我想使用批处理文件命令 Windows XP 批处理文件 压缩目录 例如 如果我想解压缩一个文件意味着我可以使用jar xf file zip java bat 文件命令 就像我想要一个命令行批处理来压缩目录一样 如果您使用的是 Ubunt
  • 如何在Windows上模拟socket.socketpair

    标准Python函数套接字 套接字对 https docs python org 3 library socket html socket socketpair不幸的是 它在 Windows 上不可用 从 Python 3 4 1 开始 我
  • Windows 窗口对接

    我想知道如何在 Windows 中将窗口停靠 捕捉到屏幕的一侧 最好使用直接的 Win32 API 我正在寻找的效果就像任务栏 一个在屏幕上有保留空间的窗口 因此最大化另一个窗口会使该窗口占据屏幕的其余部分 但使我的窗口保持在适当的位置并可
  • 对于多重继承,使用隐式转换而不是 QueryInterface() 是否合法?

    假设我有一个类实现两个或多个 COM 接口 正如here https stackoverflow com questions 1742848 why exactly do i need an explicit upcast when imp
  • 调用 printf 系统子例程在汇编代码中输出整数错误[重复]

    这个问题在这里已经有答案了 来回 在windows7控制台窗口中运行gcc s2 asm 然后生成一个exe文件 运行a exe 然后崩溃 为什么 s2 asm 代码由以下源代码生成 int m m 1 iprint m s2 asm请参考
  • 在哪里可以获得 PHP 5.3+ 的 runkit DLL 扩展?

    这是一个简单的问题 我在哪里可以获得 PHP 5 3 版本的 runkit 扩展 它的手册 http php net manual en book runkit php http php net manual en book runkit
  • 将 CrashDumps 转储到应用程序运行所在的同一文件夹中

    我编写了一个应用程序 我希望对其进行一定程度的自动调试 我想使用 Windows 错误报告将故障转储输出到应用程序运行所在的同一文件夹中 我的想法是 我可以让我的应用程序在它自己的文件夹中查找任何 dmp 文件 然后根据需要上传它们进行分析
  • Windows 目录永远不会包含临时文件的非 ASCII 字符?

    在 Windows 上使用 MinGW 7 3 0 由于 Windows 限制 Hunspell 无法从包含非 ASCII 字符的位置加载字典文件 我已经尝试了所有方法 1 现在我将文件复制到没有 ASCII 字符的路径 然后再将其交给 H
  • 卸载以前的版本安装新版本的安装项目

    我创建了一个安装项目并安装在Windows系统中 在安装安装项目之前 我将其设置为 DetectNewInstallerVersion true and RemovePreviousVersion True 我也每次都换版本 但是 如果我重
  • 如何向未知用户目录读取/写入文件?

    我正在尝试从用户目录 C Users USERNAME Test Source 读取和写入文件 但我未能成功找到任何有关如何自动检测用户名的资源 其中的 USERNAME上面的例子 或者无论如何 我可以让它读取和写入目录 而不需要知道用户名
  • 通过插件管理器在 Notepad++ 中配置代理设置

    我想在 Notepad 中配置代理设置 以允许通过代理从互联网下载 在从网上搜索如何执行此操作后 我了解到我需要通过 设置 按钮在插件管理器中执行此操作 当我转到插件 gt 插件管理器 gt 显示插件管理器 gt 设置时 我看到下面的对话框
  • 关闭有效句柄时,AppVerifier 报告“无效句柄 - 代码 c0000008”

    我有一个简单的测试程序 在运行时会失败并出现异常AppVerifier 程序重复STD INPUT HANDLE然后尝试使用关闭它CloseHandle 该程序运行良好 无需AppVerifier返回TRUE for CloseHandle
  • 如何在自托管 WCF 中获取多部分表单数据?

    我已经搜索了很长一段时间 但没有找到我要找的东西 我在 Windows 应用程序中自行托管了一个 http WCF 现在 在我的服务方法之一中 我需要接收一个文件和一些表单数据字段 在类似的问题中 情况要么发送一个文件 这是通过流数据然后转
  • 生成尽可能最快的可执行文件

    我有一个非常大的程序 我一直在 Visual Studio 下编译 v6 然后迁移到 2008 我需要可执行文件尽可能快地运行 该程序大部分时间都花在处理各种大小的整数上 并且执行很少的 IO 显然 我会选择最大优化 但似乎可以做很多不属于
  • Mac OS X 上的 /proc/self/cmdline / GetCommandLine 等效项是什么?

    如何在不使用 argc argv 的情况下访问 Mac OS X 上的命令行 在 Linux 上 我会简单地阅读 proc self cmdline or use GetCommandLine在 Windows 上 但我找不到 Mac OS
  • 响应式导航栏隐藏其下方的元素

    我创建了一个响应式导航栏 但它使下面的元素 Flexslider 插件 消失 在我制作导航栏之前 下面的 Flexslider 可以正常显示 但现在不行 导航栏的 z index 为 2 所以我不知道问题是什么 我应该如何 更改什么才能允许
  • 为什么 Git Bash 无法运行我的可执行文件?

    I am on git for windows https github com git for windows 吉特 巴什 我无法在命令行上运行可执行文件 Pedr Abc 07 MINGW64 c dev ls sqlite3 exe
  • Windows 上最快的屏幕捕获方法

    我想为Windows平台编写一个截屏程序 但不确定如何捕获屏幕 我知道的唯一方法是使用 GDI 但我很好奇是否还有其他方法可以实现此目的 如果有的话 哪种方法产生的开销最小 速度是首要任务 截屏程序将用于录制游戏镜头 不过 如果这确实缩小了
  • 如果我使用客户端计算机上未安装的字体,会发生什么情况?

    有人可以告诉我 如果我在 WinForms 应用程序中使用目标计算机上不可用的字体 会发生什么情况 它是否使用同一系列的字体 只是 Sans Serif 还是其他字体 您的应用程序将回退到 Segoe UI Tahoma 然后是 MS Sa

随机推荐

  • 使用 PHP 流式传输大文件

    我有一个 200MB 的文件 我想通过下载提供给用户 但是 由于我们希望用户只下载该文件一次 因此我们这样做 echo file get contents http some secret location com secretfolder
  • 通过 UIMenuController 的 UIMenuItem 传值

    我正在使用以下方法在 UITableViewCell 中长按时显示菜单 我需要将按删除菜单项的值传递给 void numberDelete 方法 void handleLongPress UILongPressGestureRecogniz
  • 如何使 colspan 工作而不影响其他行的宽度

    我注意到a的内容td所有列上的 colspan 都会影响其他行的宽度td 谁能解释一下这是为什么以及如何让它正常工作 我有两个要求 第一行第二列应占用尽可能多的空间 展开 第二行应采用 100 宽度 在示例中使用 colspan 2 Not
  • Python Json小写nan

    我正在尝试在 python 中解析一些 json 并且我正在利用 NaN 不幸的是 我的源代码将 NaN 写为如下 foo nan 这实际上并不少见 在Python中是这样的float nan 得到 NaN 和 C 输出nan来自 NaN
  • bq 命令行工具 - 如何插入具有嵌套字段的大查询表?

    我有三个 BigQuery 表 如下所示 Employee Employee id Department id Location id Name Age 部门 Department id Department Name Department
  • 使用硬件加速内容截取 WKWebview 的屏幕截图

    我在截屏时遇到严重问题WKWebview内容当有硬件加速内容 一些在 iframe 内运行的特定赌场游戏 到目前为止 我使用了像大家建议的标准截图方式 UIGraphicsBeginImageContextWithOptions conta
  • PHP 中可选包含

    我有一个包含常规配置的配置文件 在 git 存储库中 以及一个覆盖配置属性的本地配置文件 在存储库中被忽略 现在本地配置文件包含在配置文件的开头 include once local config php 但我希望包含是有条件的 仅当文件
  • 防止 PR 完成后删除分支

    在 Azure Devops 中 我有一个带有开发分支的 git 存储库 我们从此分支创建多个功能分支 并通过拉取请求将代码合并到开发中 一旦我们完成拉取请求 功能分支就会被删除 我想阻止这种情况发生 我想保留这些功能分支 我怎样才能做到这
  • 使用 Celery 创建动态队列

    这是我的场景 当用户登录我的网站时 我会为给定用户排队一堆任务 通常每个任务需要 100 毫秒 每个用户有 100 多个任务 这些任务排队到默认的 Celery 队列中 并且我有数百个工作线程正在运行 当任务在后端完成时 我使用 webso
  • 将新的 Date() 格式设置为 EEE MMM dd HH:mm:ss zzz yyyy

    我使用 new date 显示日期 时间 目前显示的是 Thu May 31 2012 13 04 29 GMT 0500 CDT 我需要这个 Thu May 31 13 04 29 CDT 2012 我该如何格式化它 您可以使用正则表达式
  • 两个 .Net 应用程序之间的高效通信

    我目前正在用 c 编写一个 Net 应用程序 它有两个主要组件 数据生成器 生成大量数据的组件 Viewer 能够可视化生成器创建的数据的 WPF 应用程序 这两个组件目前是我的解决方案中的两个单独的项目 此外 我正在使用棱镜4 0框架 以
  • 安排 Web Api 方法按设定的时间间隔运行

    在我当前的项目中 需要安排一个方法以设定的时间间隔运行 例如每周一次 目前这是通过 Windows 服务创建 HttpClient 并点击所需的控制器方法来完成的 我想知道这是否可以在 Web Api 项目本身中实现自动化 而不是使用外部服
  • JsonIgnore 在 System.Web.Mvc.Controller 中不起作用

    我有一个 Web API 项目和一个带有一些属性的简单类 其中一些已标记
  • Android SQLite 数据库,为什么删除表并在升级时重新创建

    在我正在关注的教程以及更多地方我看到了这一点 onUpgrade gt 删除表 如果存在 然后重新创建表 这样做的目的是什么 private static class DbHelper extends SQLiteOpenHelper pu
  • 使用 ggplot R 处理多图

    我有一个大数据框 我正在使用 ggplot ggplot geom line data DATA aes logl PercPos group name col blue geom line data DATA aes logl PercN
  • 法新社的“find_theorems”

    我怎样才能使用find theorems搜索整个正式证据档案馆 AFP 的机制 我已将存档下载到我的计算机上 并且可以从中导入理论 例如 如果我写imports Kleene Algebra Kleene Algebra Models那么该
  • 在 SQL 中组合连续行中特定列的值

    我正在将日志导出到 SQL 问题在于 如果消息列的长度超过 800 个字符 则日志记录 API 会对其进行修剪 并使用消息的其余部分创建新条目 我使用 logparser 将这些数据直接导出到 SQL 中 因此 对于其余的讨论 我们假设我必
  • MySQL 使用 Grandtotal 进行行小计

    我需要创建一个 MariaDB SQL 它允许我对两列 借方和贷方列 求和以获得差额 并返回每种不同帐户类型的小计 表格如下 Account Debit Credit acc1 1 2 acc1 1 4 acc2 3 2 acc2 2 1
  • 组合列并删除 NaNs Pandas

    如果我有一个像这样的 pandas 数据框 a1 0 116667 NaN NaN a2 NaN 0 516667 NaN a3 NaN 0 006667 NaN a4 NaN NaN 0 426667 a5 NaN 0 506667 Na
  • 导航到页面会增加内存使用量 Windows Universal 8.1

    我正在创建一个 Windows Universal 8 1 应用程序 每次我导航到一个页面 然后导航回来 然后再次导航到该页面 该页面的新实例就会保存在内存中 显然 垃圾收集器会在一段时间后释放内存 但是如果不需要 我宁愿不使用内存 有没有