什么是App Nap?它会降低我的Mac应用程序的速度吗?

早在2013年添加到MacOS中的App Nap并不是一项登上头条的功能。所以,承认三年后,你仍然不知道它是做什么的,这没有什么可羞耻的。

综上所述:App Nap会将您当前不使用或未查看的程序置于“休眠状态”,阻止它们使用系统资源,特别是CPU资源,直到您可以再次关注它们。如果你打开了20个窗口,那么只有你当前正在使用的东西应该在使用系统资源和电池续航时间。节省的能源可以加起来。

App Nap不应该与Power Nap混淆,Power Nap是一项名称相似的功能,允许您的Mac在挂起时进行下载更新或创建备份等操作。这两个功能不相关。

App Nap的作用

App Nap是MacOS(当时的OSX)10.9 Mavericks添加的能源功能之一。其他调整包括添加到电池图标上的“使用显著能量的应用程序”列表。

App Nap是一个相关优化,阻止非活动应用程序使用CPU和其他系统资源。这样可以释放您的计算机资源,并节省电池寿命。

何时将应用程序视为“非活动”?根据苹果的开发者指南,App Nap只有在以下情况下才会触发:

不是前台应用程序。 最近未更新窗口可见部分中的内容。 听不见。 未采用任何IOKit电源管理或NSProcessInfo断言。 没有使用OpenGL。

这是什么意思?首先,您当前使用的应用程序不会进入休眠状态。假设您可以看到的窗口部分当前正在进行更新,那么对于您当前可以看到的任何应用程序也是如此。任何发出声音的应用程序也不会进入睡眠状态,如果您想让音乐播放器在后台运行,这是个好消息。

这里的想法是,任何当前没有为您做任何事情的应用程序都不应该耗尽您的任何资源。应用程序在您再次打开它们的窗口时就会立即唤醒,理论上这应该完全不会影响性能(除非以积极的方式,让资源为您实际使用的应用程序打开)。

如何检查应用程序当前是否在打盹

相关:如何使用Activity Monitor排除Mac故障

广义地说,App Nap不是一个面向用户的功能。无论是否在坞站上,都没有指示器显示应用程序当前是否处于休眠状态。为此,您需要进入Activity Monitor(活动监视器),您可以在Applications(应用程序)>Utilities(实用程序)中找到,也可以通过搜索Spotlight(聚光灯)找到。

进入“能源”标签,你会看到一列“App Nap”。这里的“是”表示给定的应用程序当前正在休眠。打开有问题的应用程序,它将立即唤醒,Activity Monitor将在该列中显示“No”。

这个想法是为了让应用程序快速唤醒,以至于用户甚至不会注意到发生了午睡。但是,如果您认为这可能会降低您的一些应用程序的速度,您可能有追索权。

如何完全或针对特定应用程序禁用App Nap

App Nap适用于所有应用程序,无论它们是否在构建时考虑到了该功能。至少在理论上,这可能会给某些较旧的应用程序带来问题,阻止后台更新或导致速度变慢。如果你怀疑App Nap造成了问题,有一个简单的方法可以找出答案。

首先,在Finder中找到您的应用程序,然后右键单击它。

点击[获取信息],可能会看到防止App Nap的选项。

并不是每个应用程序都提供该选项;通常情况下,只有在创建应用程序时没有特别考虑App Nap时,才会看到该选项。根据我们的经验,这意味着该选项主要出现在2013年或更早版本的应用程序中,尽管也有例外。如果可能,请为您的程序禁用App Nap,并查看您的问题是否已解决。

或者,您可以使用单个命令完全禁用App Nap。打开终端,您可以在应用程序>实用程序中找到该终端,也可以使用Spotlight进行搜索。然后运行此命令:

默认写入NSGlobalDomain NSAppSleepDisabled-bool yes

这将完全禁用App Nap。如果这样做可以解决某个应用程序的问题,可以考虑写信给该应用程序的开发人员,让他们知道。完成此操作后,您可以使用以下命令重新启用App Nap:

默认删除NSGlobalDomain NSAppSleepDisabled

总体而言,App Nap是一个值得保持启用的功能,除非您特别有问题。更好的电池续航时间本身就让这项功能物有所值,而且大多数用户甚至都不会注意到发生了什么。但知道如何禁用这些东西以防万一是很好的。

图片来源:路透社Arthur Caranta/Flickr

相关文章