现代 UI 应用程序不在前台时会发生什么?

Mar*_*len 19 windows-8 modern-ui windows-store-app

如果我启动一个 Modern-UI 应用程序,然后切换到另一个应用程序或在桌面上运行的普通程序,第一个应用程序会发生什么?我听说关于第一个应用程序被暂停的消息,但意识到我并不确定。

我的意思是,如果你愿意,你能写一个SETI@Home ( BOINC ) 应用程序,或者不在前台的应用程序总是被挂起吗?你能改变吗?我可以看到根据可用资源进行更改,使用交流电与电池运行等。

今天早上我听说通过“查找我的 iPad”应用程序恢复了 iPad,我想知道你是否可以编写一个现代 UI 应用程序这样的东西并且让它在不成为运行的前台应用程序的情况下工作。(我知道您只是编写 Windows 服务或类似服务,这不是我要问的。)

avi*_*irk 23

如果我启动一个 Modern-UI 应用程序,然后切换到另一个应用程序或在桌面上运行的普通程序,第一个应用程序会发生什么?

应用程序进入挂起状态——您可以在任务管理器中查看其资源。

当您不使用应用程序时,应用程序将被暂停,这是为了性能。暂停时,您不会感觉到系统“滞后”(即由于在后台运行密集型应用程序而导致的速度减慢)。

Windows 8 旨在记住,当任何后台应用程序未处于活动状态时,它不应使用太多 CPU,因此您的系统在活动应用程序中运行良好。

在任何给定时间,任何 Metro 风格应用都处于 4 个生命周期状态之一:

  • 未运行
  • 跑步
  • 暂停
  • 已终止

当应用程序在状态之间转换时,它会接收生命周期事件,这些事件有助于为用户提供一致的高性能体验。

在此处输入图片说明

有一些 MSDN 博客可以帮助您实现您想要的。

管理应用程序生命周期,让您的应用程序感觉“永远活着”

当您的应用在屏幕外时保持高效

在后台高效工作 – 后台任务

  • @thetechfreak 他们将继续下载而不暂停,Windows 正在使用“BackgroundDownloader”,当您的应用不在前台时,它不会暂停下载。当您的应用程序不在前台时,您也可以无中断地下载/上传。 (3认同)