2010-06-04 3 views
0

Мы работаем над приложением JavaScript, которое действительно рушилось без причины, что мы можем видеть. Характер приложения заключается в том, что он использует javascript для перенаправления страницы каждые несколько секунд. и вращается через несколько веб-страниц в заданном количестве времени.Firefox Iframe Утечка памяти

Так что в поисках потенциальной утечки памяти в нашем коде мы настроили ее на запуск в firefox на несколько дней. во время работы мы ежедневно принимали во внимание использование памяти firefox. Это было так, как мы подозревали. за это время роспись памяти. поэтому мы решили протестировать firefox, используя следующую настройку: две html-страницы, каждая из которых имеет изображение на них. оба используют мета-перенаправление, чтобы поддерживать переключение между страницами. эти страницы отображаются в iframe на третьей странице.

Эта настройка показала тот же результат. увеличение объема памяти с течением времени. Однако. следует отметить, что мы протестировали эту же настройку в firefox, но без Iframe, и не видели увеличения использования памяти.

так что вопрос: Любые идеи, что могло бы вызвать это? или кто-нибудь знает, есть ли какие-либо сообщения об утечке памяти в Firefox при использовании переадресации iframe и страницы?

ответ

0

Увеличивает ли скорость увеличения использования памяти с течением времени и в конечном итоге останавливается или продолжает расти? Некоторое увеличение памяти ожидается в начале такого теста, из-за фрагментации памяти.

Является ли тестовая биржа размещена где-то?

0

В приложении я работаю я наблюдал поведение в светлячок, где Javascript в документе Iframe ссылается на родительский документ, как, например:

$('#md-frame', window.parent.document).css('pointer-events','none'); 

Я заметил, что если вы перезагрузить ГКЗ iframe, то все javascript в iframe существует дважды, как если бы у вас было 2 экземпляра. Если вы снова обновите src iframe, все события в js iframe существуют 3 раза и т. Д. Так и я, это может быть очевидной утечкой памяти.

Это, как я перезагрузить IFrame SRC:

$("#md-frame").attr('src',$("#md-frame").attr('src')); 

Я пытался отвязать все события до того, как странное поведение их повторное связывание, но я не имея много удачи.

Если у кого-то еще есть опыт работы с этим. Идентификация ценит об этом. Мы все еще спорим с этой проблемой в firefox.

1

Мы нашли + плавающие фреймы утечка памяти Firefox признала в https://bugzilla.mozilla.org/show_bug.cgi?id=858615

Мы испытывали его здесь на Mac, используя этот код в HTML для IP-камер

<tr> 
<div class="box"> 
<iframe src="http://10.0.1.31:8031/mjpeg.cgi" width="460" height="345" 
    class="smart_sizing_iframe noresize" frameborder="0" scrolling="no" > 
</iframe> 
</div> 
</tr> 

Safari не имеет Эта проблема.

Смежные вопросы