Firefox 标签回收

Firefox 标签回收

我有一个学术性的问题。使用 Firefox 时,如果我在访问网站时有未使用的选项卡可用,那么内存使用情况是否会更好:

  • 关闭该标签,然后打开一个带有新站点的新标签?
  • 重复使用该标签?

答案1

我刚刚做了一个不科学的实验,答案是关闭标签然后打开一个新标签,但我们谈论的是边际。

我的 Firefox 占用了 242.7MB,我打开了 Google 的新标签后,它又变成了 244.9MB,然后我关闭了该标签后,它又变成了 242.8MB。

然后我在新标签页中打开了 Microsoft.com,它变为 248MB,关闭它后又变回 242.7MB。

然后我打开 Google,它变成了 244.8MB,然后打开 Microsoft.com,它变成了 257MB,再打开 Google.com,它变成了 246.7MB,关闭两者后,它变成了 243.1MB

因此,关闭时它使用较少的内存,但是,我们几乎什么都没谈论,而且我不会很快改变我的浏览习惯!

答案2

这在很大程度上取决于每个选项卡中的活动。您是否存储了大量的浏览历史记录?该选项卡中的页面是否可供预取?与使用每个进程选项卡模型的 Chrome 不同,Firefox 的每个选项卡都有一个基于会话的模型。此外,最近关闭的选项卡可用于“撤消”,因此关闭它不一定能释放内存。如果您想限制整个进程生命周期的总内存量,可以调整配置选项。

这是一个文章讨论一些与重度标签浏览相关的 about:config 调整。

  1. 在 Firefox 中转到 about:config。
    • 在“过滤器”框中输入“会话”。
    • 编辑 browser.sessionhistory.max_entries – 这是您浏览会话历史记录中存储的页面数。基本上,这些页面可以通过“后退”和“前进”按钮访问。默认值为 50 – 我将其减少到 20。
    • 编辑 browser.sessionhistory.max_total_viewers – 这是存储在 RAM 中的页面数量,这样它们就不会被 Firefox 的渲染引擎重新处理。这允许您返回 Firefox 中的页面并几乎立即加载它。存储的页面数量实际上取决于您机器上的 RAM 数量(请参阅此内容)。我将其减少到 4(我有 2GB RAM)。
    • 编辑 browser.sessionstore.max_tabs_undo – 关闭后可以恢复的标签数量(可以使用 Ctrl/Cmd-Shift-T 执行此操作)。默认值 10 比我真正需要的多,所以我将其减少到 3 个标签。
    • 编辑 browser.sessionstore.interval – Firefox 默认每 10 秒保存一次会话。我将其改为更保守的 30000 毫秒。

答案3

如果您正在研究浏览器引擎的内部结构,那么这应该是一个很好的问题,但对于日常浏览而言,无论如何您都不会注意到差异。不用担心,继续浏览。:)

答案4

很奇怪。我得到了与 Wil 相反的结果,无论是新启动的浏览器还是打开了几天的浏览器。

首次发布

替代文本

打开新标签页访问 google.ca (+7508k)

替代文本

关闭新标签页并打开一个新标签页前往 superuser.com (+1032k)

替代文本

重新使用新打开的标签页前往 thedailywtf.com (-640k)

替代文本

这只是众多可能性中的一个样本。你打开的网站也会有不同的效果取决于需要加载和解析的额外内容(例如 javascript)。我很惊讶重复使用不过,新打开的标签页实际上降低了内存使用率。公平地说,我在加载每个页面后等待了大约 5 秒钟,直到内存使用率停止变化。Mozilla 在较新版本中肯定在内存管理方面做了大量工作,因为它已经取得了很大改进。

相关内容