Kiedy uruchamiam Firefoksa, nie mam przez chwilę żadnych problemów, ale po kilku dniach zaczynają występować skoki procesora. Podczas gwałtownego wzrostu Firefox zawiesza się, a następnie zatrzymuje. Skoki występują co siedem do dziesięciu sekund, a każdy skok trwa od dwóch do trzech sekund . Jeśli piszę, gdy wystąpi skok, znaki wyprowadzane są dopiero po skoku. Początkowo myślałem, że ten problem jest spowodowany przez Flash, więc go wyłączyłem, ale problem nadal występuje.
Ponadto użycie pamięci Firefox wzrasta do ponad 600 MB po kilku dniach.
Lista wtyczek i rozszerzeń Firefoksa, których używam, jest dostępna tutaj .
Odpowiedzi:
Podejrzewam, że jest to Garbage Collector lub Cycle Collector.
W
about:config
zamianjavascript.options.mem.log
natrue
. Teraz powiadomienia o GC i CC powinny być dostępne w konsoli błędów ( Crtl+ Shift+ J) Jeśli ich czas i czas trwania odpowiadają zamrożeniu, to jest twój problem.Kiedy miałem ten problem, naprawiłem go, zdmuchując mój profil Firefox i tworząc nowy od podstaw. Profile Firefoksa mają tendencję do gromadzenia dużej ilości z czasem.
Nawet to nie jest idealne rozwiązanie. Jeśli otworzysz wiele kart w przeglądarce Firefox (100+) lub wiele rozszerzeń i pozostawisz Firefoksa działającego przez wiele dni, nieuchronnie zwolni. Co jakiś czas będziesz musiał ponownie uruchomić Firefox.
Jeśli jesteś podobny do mnie i masz tendencję do gromadzenia dużej liczby kart, z którymi musisz sobie poradzić w pewnym momencie, kolejną sztuczką, której używam, jest ustawienie
browser.sessionstore.max_concurrent_tabs
na 0. Spowoduje to, że Firefox nie ładuje wszystkich kart twojej sesji podczas uruchamiania. Zamiast tego załaduje je, gdy na nie przełączysz. Uważam, że to, a także sporadyczne ponowne uruchamianie przeglądarki Firefox, znacznie zmniejsza obciążenie związane z posiadaniem bardzo wielu kart.źródło
W
about:config
ustawbrowser.sessionstore.interval
dużą liczbę (powinna być10,000
lub15,000
; ustaw na około600,000
).Zasadniczo jest to liczba milisekund między momentami, w których Firefox aktualizuje „zapisaną sesję”. Jeśli masz otwartych wiele kart lub długą historię przeglądania (lub, jak to często bywa u mnie, obie), może to być zapisywanie absurdalnej ilości danych do
sessionstore.js
pliku co 10 lub 15 sekund, co może powodować, że filmy Flash zawiesić na chwilę lub nawet zamrozić cały komputer co kilka minut.Ustawienie tej wartości na dużą liczbę ma tę wadę, że jeśli Firefox ulegnie awarii, podczas próby przywracania utracisz ostatnie kilka minut historii przeglądania. To, moim zdaniem, niewielka cena do zapłacenia.
Skoki procesora powinny być znacznie rzadsze.
źródło
Nie naprawi przecieków pamięci per se. Ale włączenie opcji „Nie ładuj kart, dopóki nie zostanie zaznaczone”, przynajmniej nie ładuje kart, dopóki nie klikniesz ich po ponownym uruchomieniu, co spowoduje znaczne zmniejszenie pamięci.
Zauważyłem również, że użycie CCleaner do wyczyszczenia „Sesji” Firefoksa trochę pomogło. Najpierw wykonaj kopię zapasową wszystkich otwartych kart, ponieważ usuwa ona informacje odzyskiwania sesji. Przed uruchomieniem CCleaner mój plik sessionstore.js miał około 800 KB, ale później do około 6 KB.
Więcej informacji o sklepie sesyjnym można znaleźć w Rozwiązane: Firefox zawiesza się co 10 sekund, przewijanie jest przeskakujące .
Odinstalowanie Flashblock naprawiło moje problemy z wysokim procesorem w Firefoksie. Być może Flashblock i Adblock Plus lub inne rozszerzenie nie dają sobie rady?
Życie jest zbyt krótkie, aby zadzierać z Firefoksem. Właśnie wyeksportowałem moje zakładki, odinstalowałem Firefoksa, następnie usunąłem wszystkie foldery Firefoksa na komputerze, a następnie ponownie zainstalowałem Firefoksa od zera i przywróciłem zakładki. Teraz działa szybciej niż Google Chrome z całkowicie nową instalacją.
źródło
Bardzo trudno powiedzieć. Czy powoduje to tylko ogólne użycie, czy uzyskujesz dostęp do określonej witryny? (Mieliśmy problem polegający na tym, że przeglądarka zyskiwała pamięć z czasem z powodu wycieku pamięci w jQuery ).
Zakładając, że używasz systemu operacyjnego Microsoft, możesz spróbować użyć narzędzia Microsoft Process Monitor . Wyrzuca z siebie mnóstwo wiadomości, ale powinieneś być w stanie zawęzić je do przedziału, w którym nastąpiło „zamrożenie” i być może zobaczyć, jaki proces wykonuje blokowanie.
źródło
Jeśli jeszcze tego nie robisz, możesz spróbować zaktualizować Firefoksa do najnowszej wersji. Ciężko pracowali, aby zmniejszyć te wycieki pamięci.
źródło