如何确定Safari中的哪个标签正在使用CPU?


29

我通常会在Safari中在后台打开几个选项卡,有时我会看到它占用了不寻常的CPU(PluginProcess或WebProcess)。

我如何找出是哪个标签引起的?如果没有简单的GUI解决方案,我也愿意使用基于终端的技术来查找罪魁祸首。我希望不必经常这样做。

(注意:我意识到这类似于一个老问题,但是从那时起Safari就进行了更新,也许还有新技术可用。)


在此期间,您是否找到了自己的解决方案?我遇到了同样的问题,但主要是因为RAM的过度使用(似乎由一些选项卡触发):apple.stackexchange.com/q/125290/5887
MostlyHarmless 2014年

@MostlyHarmless请查看以下答案:apple.stackexchange.com/a/127111/85985 @ jtbandes:请标记为正确的答案,因为您标记的答案不包含任何解决方案
Ichixgo

@Ichixgo:谢谢,因为我仍在使用OS 10.6.8,所以我无法使用Safari 6.1
MostlyHarmless

1
@MostlyHarmless:太糟糕了,也许您想查看Chrome。它仍然可以在10.6上运行,您还可以检查哪些选项卡占用了CPU。下拉菜单中的窗口>任务管理器
Ichixgo'2

Answers:


14
  1. 您需要Safari 6.1或更高版本

  2. 启用调试菜单。

更新:对于Mac OS Mojave和更高版本,在输入命令之前,请转至系统偏好设置>安全性和隐私>隐私>完整磁盘访问并添加终端。

    defaults write com.apple.Safari IncludeInternalDebugMenu -bool true
  1. 将“使用每个选项卡的Web进程”和“在页面标题中显示Web进程ID”设置为开。

屏幕截图


1
善用图形
CousinCocaine

2
在现代Safari中,实际上没有很好的方法来查看这些进程ID,因为页面标题几乎总是在UI中被截断,但是此Safari扩展程序可以生成所有选项卡的列表,包括其完整的,带有PID的标题:brettterpstra.com/2010 / 06/18 / tablinks-safari-extension
Brent Royal-Gordon

2

对于它的价值,我已经检查了最新版Safari.app(版本5.1.4 / 7534.54.16)中的“开发”菜单和“调试”菜单,但找不到任何有用的功能。

开发菜单:

调试菜单:

可以使用以下命令启用调试菜单:

defaults write com.apple.Safari IncludeInternalDebugMenu -bool true

2

cmd ⌘+ alt ⌥+ A⇔ 如果持续时间足够长,Window > Activity可以帮助您确定哪个标签最活跃。

我必须承认所有测试都失败了,但是我主要使用的是速度很快的Web服务器。

我还测试了Debug > Show Frame Rate Meter(请参阅Mathias Debug下拉菜单),它是对原始问题的部分答案。您必须通过重新加载每个选项卡来进行测试,并比较3米的输出以查看谁是生猪。


2

活动监视器应用程序为各个Safari选项卡提供条目。您可以在其中搜索“ Safari”以仅查看与Safari相关的进程(包括其所有选项卡),然后按CPU百分比排序以查看活动的进程。

不幸的是,每个进程名称仅包括URL的域,而不包括完整的URL,因此,如果像我一样,从同一个域打开许多页面,则要弄清楚哪个选项卡可能有些棘手。

(我使用的是macOS Sierra 10.12.6和Safari 10.1.2;我不确定何时引入。)

活动监控应用,带有流程


2
尽管如此,它仍然为您提供了一个很好的提示以弄清楚发生了什么,谢谢!
Edoardo '18
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.