Подтвердить что ты не робот

Как измерить использование и эффективность памяти?

У меня есть веб-приложение, которое использует много JavaScript и предназначено для запуска без остановок (для дней/недель/месяцев) без перезагрузки страницы.

Однако Chrome несколько раз рушится. Safari не падает так часто, но значительно замедляется.

Как проверить, не связаны ли проблемы с моим кодом или с самим браузером? И что я могу сделать для решения этих проблем?

4b9b3361

Ответ 1

Используя Инструменты разработчика Chrome Developer, вы можете получить снимок того, что использует ваш процессор и получить снимок памяти.

Возьмите 2 снимка. Выберите этот первый и переключитесь на сравнение, как показано ниже.

enter image description here

Треугольный столбец - это дельта или изменение математического символа. Поэтому, если ваши дельта положительны, вы создаете больше объектов в памяти. Я бы сделал следующий снимок через определенный промежуток времени, скажем, 5 минут. Затем сравните результаты снова. Глядя на delta​​strong >

Если ваши дельта постоянные, вы отлично справляетесь с управлением памятью. Если это отрицательно, ваш код чист, и ваши использованные объекты могут быть правильно собраны, снова отличная работа.

Если ваши дельта продолжают расти, у вас, вероятно, есть утечка памяти.

Кроме того,

document.getElementsByTagName('*'); // a count of all DOM elements

было бы полезно узнать, неуклонно увеличиваете ли вы элементы DOM.

Ответ 2

В Chrome также есть страница "about: memory", но я согласен с IAbstractDownVoteFactory - инструменты разработчика - это путь!