MozTW 討論區
https://forum.moztw.org/

firefox關閉分頁(tab)後,記憶體並無做釋放的動作
https://forum.moztw.org/viewtopic.php?f=2&t=4590
1 頁 (共 1 頁)

發表人:  Valandil [ 2004-12-03, 08:24 ]
文章主題 :  firefox關閉分頁(tab)後,記憶體並無做釋放的動作

在windows下用firefox 1.0時,
發現再同一個視窗開多個tab
然後再關閉幾個tab
在狂開tab
反覆以上動作
每個tab中 最好有大張的圖檔
(尤其是逛相簿的網站可以測試)
就會發現開沒多就 硬碟就開始swap
fire fox的記憶體使用量 就暴增上百MB

很像 fire fox在關閉一個tab時
設計上並未考慮到將記憶體釋放掉

有人也碰到這樣嗎? :(

發表人:  訪客 [ 2004-12-03, 08:55 ]
文章主題 : 

基本上兩種分頁的設計本來就不同吧,
myie 是用 MDI,ff 則真的是用 Multipage。

記憶體的釋放這要看看程式怎麼寫,看看有誰知道吧 :wink:
不過,ff 畢竟是要跨平台的東西,
有時不能單單只以 windows 環境來做考量。

發表人:  darkshine [ 2004-12-03, 20:40 ]
文章主題 : 

Valandil 寫:
在windows下用firefox 1.0時,
發現再同一個視窗開多個tab
然後再關閉幾個tab
在狂開tab
反覆以上動作
每個tab中 最好有大張的圖檔
(尤其是逛相簿的網站可以測試)
就會發現開沒多就 硬碟就開始swap
fire fox的記憶體使用量 就暴增上百MB

很像 fire fox在關閉一個tab時
設計上並未考慮到將記憶體釋放掉

有人也碰到這樣嗎? :(

我現在用官方的 firefox 1.0 沒有這種現象。
利用工作管理員看的,原本記憶體是 5x K,
開很多圖的網頁連開四個,衝到 28x K,
關掉那四個,掉回 5x K。

我之前用加速板的時候是有你說的情形,
不過你再多測試一下,它記憶體增長並不是每次都會發生,
通常是開很多分頁後(或是載入很多圖以後),
突然一下子跳了幾十 K,然後維持這個大小,
這時候你再開一兩個分頁(不要那種很多圖的,一般的就好),
它仍然是那個大小,不會再增加,
繼續開到一個臨界點以後,又會再一次跳幾十 K 上去。
關掉分頁它的確不會放掉記憶體,
但是如果你的需求量沒有超過現在佔有的記憶體數量,
它也不會再往上增加。

這種現象比較像是 memory pool(記憶池)的管理策略,而不是 memory leak(記憶體遺失)。
這兩者有著微妙的不同,有興趣的話可以找程式設計的相關書籍來研究,
或者只要知道這一點就好:
memory leak 可能無限擴大而無法收拾;
但是 memory pool 絕不會超過使用者申請的最大值。

是的,它的記憶體使用量只會增加不會減少,
但是別擔心,一切都在控制之下,不會爆炸的。
這種管理策略的目的是為了減少配置與釋放記憶體的次數,(那些動作很慢)
以達到加速的目的。

最後,我要聲明一下,
以上是我觀察並推論的結果,
我沒有看過 source code,也許我猜錯了也不一定,
不過我想應該是這樣。

發表人:  big jason [ 2004-12-04, 19:42 ]
文章主題 : 

我用的情況也是會吃掉很多記憶體
:shock:
我同時用了Maxthon來測試, 開同樣的網頁, 只會差的越來越多

而且我覺得上網每個人的所好不同, 開的網頁也不能說都以圖多或圖少的為主, 而且, 會安裝這種多tab的browser, 就是想要多開幾個網頁, 如果這樣就要佔掉很多的記憶體, 好像相比後貶低了它原有的優點

這只是我個人的看法 :?

發表人:  訪客 [ 2004-12-04, 21:15 ]
文章主題 : 

確實應該不是 memory leak,關掉 ff 就會回收,
但吃記憶體的確是個麻煩問題,
不知道 ff 對頁面的顯示是怎麼處理的,
該不會是都放到記憶體中吧,開個20頁,就很有機會破百耶。
這種方式未來似乎也不會改變,
只能期望以後主流規格都是插上 1GB 的記憶體,
反正 64bit 時代也已經來了 :wink:

發表人:  kourge [ 2004-12-04, 21:57 ]
文章主題 : 

64-bit 的處理器,若沒有配上 64-bit 的軟體,一樣只能當雙 32-bit CPU 用。

發表人:  訪客 [ 2004-12-04, 22:56 ]
文章主題 : 

嗯...我也遇到

1 頁 (共 1 頁) 所有顯示的時間為 UTC + 8 小時
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/