如何解決Google Chrome吃內存的硬傷?
Chrome已經成為了世界上最流行的瀏覽器,然而這並不意味著它很完美——起碼在資源佔用方面,就經常為人所詬病。特別是在內存使用上,Chrome的策略經常令人驚呼連連,無論你往機器加了多少內存,Chrome總有辦法把內存都吃掉。要如何解決這個問題?今天就一起來說說吧。
Chrome之所以如此耗費內存,跟它的機制是息息相關的。Chrome每個標籤頁都會啟用一個新的進程,負責標籤頁中網頁的渲染、腳本運行等,每個進程都需要佔據不小的資源。與此同時,就算你不切到這個標籤,它依然會維持網頁元素的實時運行,因此當在Chrome開啟多標籤後,這些標籤頁都會單獨占據不小的資源,內存也就被這樣消耗殆盡。
Chrome的機制非常吃內存
要如何解決問題?標籤頁佔據線程這是Chrome的底層機制,難以改變;因此要讓Chrome節省內存,所需要做的就是讓後台的標籤頁別處於激活狀態,讓後台的標籤頁將資源釋放出來。事實上,Chrome就計劃在新版中這麼幹,Chrome的一個開發思路就是減少後台標籤頁的JS喚醒計時器,讓後台標籤頁中的網頁別運行不必要的任務,這可以節省不少資源。
不過Chrome的這個改進仍未應用於當前版本。怎麼辦?通過第三方的擴展程序,也可以實現類似的效果。
The Great Suspender:https://chrome.google.com/webstore/detail/klbibkeccnjlkjkiokjodocebajanakg
這是一款老牌的Chrome擴展,它的作用在於可以凍結後台的標籤頁。在Chrome商店中,可以直接安裝The Great Suspender,而國內用戶也可以直接通過搜索引擎找相應的crx文件安裝。
The Great Suspender的作用在於,它可以在一定時間後,凍結掉後台的標籤頁,讓標籤頁中的網頁暫停,將資源清空出來。而The Great Suspender的使用也很簡單,安裝後,就會彈出相應的設置頁面,可以在其中設置多久之後凍結標籤頁,例如可以設置為1小時,那麼後台標籤頁如果1小時不活動,就會被凍結。此外,還可以設定不要凍結固定的、正在播放的、輸入框有文字以及使用中的標籤,可謂是非常細緻了。
可以設置一定時間後,自動凍結後台標籤頁
一些設置選項
在標籤頁被The Great Suspender凍結後,瀏覽這個標籤是需要重新加載的,在默認情況下,需要手動刷新頁面,才可以繼續瀏覽。但是,The Great Suspender也提供了自動重新加載的選項,可以將功能設置為瀏覽凍結了的標籤頁時,就自動重新加載這個標籤頁,更便於使用。值得一提的是,這個重新加載是無需通過網絡進行的,而是利用本地的緩存,就算是斷網,也可以重新顯示原來的頁面,並回到之前瀏覽的位置。
凍結後的標籤頁,其實也可以設置切換到凍結的標籤頁時自動刷新
來看看The Great Suspender的效果吧。我們利用系統任務管理器進行資源監測,從下面的對比可以看到,在凍結標籤頁之前,Chrome的內存佔用高達1.2G;用The Great Suspender凍結後台標籤頁後,就僅剩下670M了,效果還是立竿見影的。
省內存效果還是很明顯的
總的來說,The Great Suspender的確可以解決Chrome內存佔用過多的問題。不過它的體驗也不是完美的,凍結標籤後再瀏覽需要重新加載這點,會中斷網頁的連續瀏覽體驗,而且會消耗CPU資源。不過,在官方沒有發布改進資源佔用的新版之前,這依然不失為一個減少Chrome內存佔用的好方法,有需要的朋友不妨嘗試一下!