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


19

如果我启动Modern-UI应用程序,然后切换到其他应用程序或在桌面上运行的常规程序,那么第一个应用程序会怎样?我听说有关第一个应用程序被暂停的信息,但意识到我并不确定。

我的意思是,如果您愿意的话,可以编写SETI @ HomeBOINC)应用程序吗?还是将处于前台状态的应用程序始终挂起?你能改变吗?我可以看到基于可用资源,使用交流电还是电池等来进行更改。

今天早上,我听说有一个iPad由于有了“查找我的iPad”应用程序而得到恢复,并且想知道是否可以编写Modern-UI应用程序之类的东西并使它在不运行前台应用程序的情况下工作。(我知道您只是编写Windows服务或类似服务,这不是我要的。)


1
与“查找我的iOS设备”应用程序的比较无关紧要;因为iOS供应商(苹果)可以根据需要允许它使用iOS应用。我正在考虑将其从问题中删除以避免混淆。其他人怎么想?
kluka 2012年

@klyonrad这与我有关,因为这是我首先问这个问题的唯一原因,并提供了一个为什么有人可能首先关心的示例。我强烈希望您不要问这个问题。
Mark Allen

Answers:


23

如果我启动Modern-UI应用程序,然后切换到其他应用程序或在桌面上运行的常规程序,那么第一个应用程序会怎样?

该应用程序进入暂停状态 -您可以在任务管理器中检查其资源。

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

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

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

  • 没有运行
  • 跑步
  • 已暂停
  • 已终止

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

在此处输入图片说明

有一些MSDN博客可以帮助您实现所需的内容。

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

当您的应用不在屏幕上时可以提高工作效率

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


1
为什么要下票?请注意发表评论,以便改进帖子。
2012年

这回答了我的问题,谢谢!(我也投票赞成,不知道有任何否决票。)
马克·艾伦

3
@thetechfreak他们将继续下载而不会暂停,Windows使用的是BackgroundDownloader当您的应用程序不在前台时不会暂停下载。另外,当您的应用程序不在前台时,您可以在不中断的情况下下载/上传。
2012年

1
我特别喜欢这些链接-我现在对现代UI应用程序感觉更好。
马克·艾伦

1
@HaydnWVN不用担心!编辑500个帖子将是黄金。:)
avirk 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.