瀏覽器是一樣的人 - 他們變老,他們會變得過於龐大,而他們得到拋棄年輕和更精簡的機型。
Firefox不僅僅是一個瀏覽器,它是一個生態系統。儘管我覺得最近的版本非常臃腫,但核心產品通常是穩定的。
不過,Firefox是一個生態系統/平臺:
1)寫的不好插件
2)寫的不好的JavaScript代碼,在其內執行。
3)Adobe Flash作爲一個重量級視頻平臺和寫得不好的廣告腳本,比如'用一隻鴨子擊中烏薩馬本拉登以降低抵押率並獲得免費iPod *(需要參與)。
4)Quicktime和其他媒體播放器。
5)一些嵌入式Java代碼。
內存泄漏的描述表明運行amok的腳本或請求更多內存的第三方工具。如果你曾經在Mac上運行Flash,那麼幾乎是一個給定的CPU利用率的90%。
大多數編程語言的目標不是拯救你,而是給你工具來保存自己。你可以使用任何語言編寫不良和臃腫的代碼和內存泄漏,包括垃圾收集。第三方工具通常不如平臺本身那麼好地測試。試圖做得太多的網頁也並不少見。
如果你想做一個實驗來演示這一點,可以使用Firefox獲得一個mac,然後去一個寫得很好的網站,比如Stack Overflow,花一個小時。你的內存使用量不應該增長太多。然後花5分鐘時間訪問Myspace上的隨機頁面。
現在讓我試着回答您的問題根據我的猜測,因爲我不熟悉的源代碼
- 當我關閉所有標籤頁,爲什麼 不內存使用情況去所有的 的方式?
而每個瀏覽器實例是具有其自己的存儲器中的獨立過程,在一個窗口中的選項卡都在相同的處理。 Firefox曾經有過某種內存緩存,只是關閉一個標籤並不能立即從內存緩存中清除相關信息。如果您重新打開一個標籤到同一個網站,您可能會獲得更好的性能。有一些高級選項可以讓你禁用它,比如browser.cache.memory.enable。或者只是搜索禁用內存緩存。
* Why is there no limits on extensions/themes/plugins memory usage?
出於同樣的原因,Windows或Linux沒有應用程序的審查過程,您可以運行它們。這是一個開放的環境,你承擔風險。如果你想去的地方應用和擴展「驗證」的環境下,蘋果可能會去:)
* Why does the memory usage increase if it's left open for long periods of time?
不是在腳本中的所有計算和行爲具有視覺表現的方式。一個腳本可能會在後臺做一些事情(例如請求額外的材料,預先獲取的東西,只是錯誤),即使你沒有看到它。
* Why are memory leaks so difficult to find and fix?
這是關於簿記。想想你曾經借過的每一件物品(甚至是一支鋼筆),或者是你一生中借用過你的東西。他們都被佔了嗎?內存泄漏的方式是相同的(你從系統借用內存),除了你傳遞物品。然後看看桌子上的東西,你是否留下了任何東西,因爲'你可能很快就需要它',儘管你可能不會這樣做?相同的故事。
來源
2010-04-14 14:26:26
Uri
這個問題有點廣泛。 Firefox遭受內存泄漏,最好讓您閱讀該主題。關閉選項卡不一定會釋放爲該選項卡分配的內存。 – 2010-04-14 14:33:49
和你的編程問題是? – KevinDTimm 2010-04-14 14:41:14
@KevinDTimm它是列表中的最後一顆子彈 – David 2010-04-14 15:04:14