我正在尝试使用 Devtools,但我在控制台上打印了以下错误:
DevTools 调试器被禁用,因为它附加到托管多个顶级框架的进程,在该进程中 DevTools 调试器无法正常工作。请使用 --disable-features=ProcessPerSiteUpToMainFrameThreshold 重新启动浏览器以启用调试器。
我使用的是 Chrome Beta 115.0.5790.56,这种情况最近才开始发生。这是 Chrome 中的错误吗?
根据https://niek.github.io/chrome-features/:
ProcessPerSiteUpToMainFrameThreshold
重复使用 RenderProcessHost 达到一定阈值。该模式忽略 软进程限制,其行为就像每个站点的进程策略一样 对于所有站点,还有一个附加限制,即进程只能 当该过程中的主机数量保持在以下水平时可以重复使用 一个门槛。
该功能目前在正常的 Chrome 版本中默认处于禁用状态,但似乎已在 Chrome Beta 分支中默认设置为启用。
我使用的是 Chrome beta 版本 116.0.5845.42,该版本在
chrome://flags/#enable-process-per-site-up-to-main-frame-threshold
中具有此功能的切换开关。
有描述
启用 ProcessPerSite 直至主机阈值 主动重用同站点渲染器进程来托管多个主框架,直至达到某个阈值。 – Mac、Windows、Linux、ChromeOS、Android、Fuchsia、Lacros
禁用该功能并重新启动浏览器将消除错误消息。
当我搜索 chrome 标志时,没有显示该标志:( 你还有其他选择吗?
我在工作和家里运行完全相同版本的浏览器。 版本 115.0.5790.110(官方版本)(64 位) 相同的程序(多个内部框架)会破坏工作浏览器,但家庭浏览器工作正常。
这是一个不需要下载 Beta 分支的解决方案。
我每天都在使用 Chrome 版本 115.0.5790.110(最新)进行调试,昨天或前天第一次开始看到这个问题。
此版本不支持通过 chrome://flags 更改设置。
而是通过在开始菜单中键入“cmd”打开 Windows 命令行并运行:
start chrome --disable-features=ProcessPerSiteUpToMainFrameThreshold
请注意,即使没有像这样运行 chrome,我注意到重新启动浏览器几次后,最终我能够正常调试。