2008-10-14 3 views
16

Próbowałem śledzić ten jeden dosłownie miesiąc teraz bez żadnego sukcesu. Mam ten fragment kodu na stronie reklamy samochodu, która zasadniczo pozwala na obracanie się miniaturek w wynikach wyszukiwania, biorąc pod uwagę, że samochód ma wiele zdjęć. Można zobaczyć go w akcji, co następuje:Jak śledzić i usuwać błędy wycieków pamięci JavaScript w przeglądarce Firefox?

http://www.abcavendre.com/4506691919/

Jest on zbudowany na ramach mootools 1.2. Problem polega na tym, że ten skrypt, pod Firefox 3 zużywa dość dużą ilość godzin nadliczbowych pamięci, gdy strona jest pełen tych zdjęć obrotowych, takich jak strony zapasy:

http://www.abcavendre.com/Vitrine/Israel_Huttman/

Można patrz źródła skryptu w pytanie tutaj:

http://www.abcavendre.com/scripts/showcase_small.js

Jakieś pomysły dotyczące przyczyny wycieku pamięci? Dziwne jest to, że ten kod działa poprawnie w IE7.

+0

Rozwiązałeś to? Jeśli tak, jaki był problem? –

+0

Nie udało mi się go rozwiązać. Otrzymuję cenne informacje z dodatku Leak Monitor Addon. Wciąż pracuję nad tym. –

+7

Wyłącz Firebuga, jeśli jest włączony w dowolny sposób. – leppie

Odpowiedz

8

sposób, aby śledzić wycieki pamięci w Firefoksie jest z Leak Monitor Addon. Pokazuje wycieki pamięci javascript (w tym skryptów rozszerzeń).

Należy pamiętać, że wtyczka będzie czasami pokazywać wyciekane obiekty, które zostaną wyczyszczone później przez odśmiecenie. W takim przypadku wtyczka uruchomi nowe okno pokazujące nowy status.

+0

Tęskniłeś: po https, więc SO wysyła ciekawy adres URL do TheEdge ... :-) – PhiLho

+0

Naprawiono. Dziękujemy za zgłoszenie;) –

+5

Jako, że SO jest stroną w języku angielskim, możesz podać link w języku angielskim: https://addons.mozilla.org/en-US/firefox/addon/2490 –

0

Spróbuj elementy Zerowanie zmiennej tablicy w końcu funkcji initialize

... 

    if (ads.length > 0) 
     { 
     this.imagesFx = new Fx.Elements(elements, 
      { 
      wait: false, 
      duration: 1000 
      }); 
     this.moveNext.periodical(2500, this); 
     } 

    elements = null; //Add THIS! 
} 
+0

To nie wyjaśniałoby wycieku pamięci w nadgodzinach (bez odświeżania strony), ponieważ funkcja initialize jest wywoływana tylko raz na stronę. –

+0

Wypróbuj ... to nie zaszkodzi –

+0

Po prostu zrobiłem, bez zmian. –

0

Aktualizacja do MooTools 1.2.1, poprawiliśmy sposób zbierania śmieci i obsługę wycieków.

Powiązane problemy