您现在的位置是:首页 > 文章详情

微软优化 chrome.exe 被固定到任务栏的过程,可降低 CPU 使用率

日期:2020-07-06点击:593

微软为 Chromium 提交的一个补丁能对检查浏览器是否被固定在任务栏进行性能优化。

根据微软在补丁中的描述,他们发现 Chrome 会在启动后的 45s 使用一段代码检测当前正在运行的 chrome.exe 是否已被固定在任务栏上。每调用一次这段代码(chrome!UtilWinImpl::IsPinnedToTaskbar)都会产生较高的 CPU 消耗(~300ms 的 CPU time 以及 1s wall time)。

这个过程主要包括:

  • 枚举被固定在任务栏文件夹中的所有快捷方式
  • 检查它们是否为当前运行的 exe 的快捷方式
  • 枚举所有与快捷方式相关的 Shell verbs
  • 检查 verb 是否处于"unpin"状态(即是否已被固定在任务栏)

上述的过程使用了一个单独的进程来进行检查,而且检查 Shell verbs 会导致 shell 扩展被加载,从而运行第三方代码,这些都会导致 CPU 使用率升高。

微软对这个过程进行了优化,他们认为无需在快捷方式上枚举 verb,而是使用代码库中的其他固定状态检查来代替。于是删除了枚举 shell verbs 的代码,并在浏览器进程中运行代码,而不是使用单独的进程,因为已经不再会加载第三方代码。

此项变更最后相应地降低了检查浏览器在任务栏状态时的 CPU 使用率。这个消耗可能对大部分配置来说可能并不明显,不过微软的 Eric Lawrence 认为,修复小问题最终可以提升浏览器的性能。

原文链接:https://www.oschina.net/news/116955/microsoft-tests-new-improvements-for-chromium-chrome-edge
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章