歡迎您光臨本站 註冊首頁

微軟為 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 認為,修復小問題最終可以提升瀏覽器的效能。


[admin ]

來源:OsChina
連結:https://www.oschina.net/news/116955/microsoft-tests-new-improvements-for-chromium-chrome-edge
微軟最佳化 chrome.exe 被固定到工作列的過程,可降低 CPU 使用率已經有107次圍觀

http://coctec.com/news/soft/show-post-241306.html