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

Как найти память, используемую вкладкой chrome с помощью javascript

В веб-приложении, которое загружает большое количество сбоев данных, когда оно превышает определенный предел. Поэтому я хочу найти память, используемую вкладкой chrome, используя javascript, то есть кодом, чтобы предотвратить такую ​​проблему.

4b9b3361

Ответ 1

здесь из исходного кода chrome:

//Возвращаем значения, возвращаемые в window.performance.memory, более подробные и более актуальным в общем сотруднике. Без этого флага память информация по-прежнему доступна, но она обновляется и обновляется менее часто. Этот флаг также применяется к работникам. const charkEnablePreciseMemoryInfo [] = "enable-exact-memory-info";

Для получения более динамичного и точного результата вам понадобится флаг --enable-precise-memory-info. По соображениям безопасности Google Chrome не предоставляет точную информацию по performance.memory по умолчанию. Вы можете увидеть https://github.com/paulirish/memory-stats.js/tree/master хороший способ контролировать память. Но это не очень хорошее решение, даже если у вас есть контроль над тем, как пользователь запускает "сайт". Вы не можете быть уверены, что сбой Chrome или насколько точны данные.

Первым решением было бы сделать глобальный factory pattern, который учитывает все новые объекты и имеет определенный предопределенный размер для каждого и когда размер достигает определенного номера, вы можете предупредить пользователя. Будьте осторожны, таким образом вы не считаете связанные события. Вы можете попробовать и добавить события в один и тот же factory (или лучше другой), но я не знаю, насколько это будет точно.

Второе решение и лучшее решение этот пример. Отличный пример: 500 000 записей с быстрым ответом и низкой памятью. Как? Просто загрузите данные, которые пользователь видит, и ничего больше. Когда пользователь прокручивает, он находит нужные данные, не загружая все остальное. Это то, что вы можете сделать с чем-то, что занимает много памяти.

Ответ 2

Недавно мы столкнулись с такой же проблемой.
Вы можете использовать API производительности Web для проверки текущего общего распределения памяти.
window.performance

Он позволяет веб-страницам получать доступ к определенным функциям для измерения производительности веб-страницы. Существует нестандартное расширение, доступное только для хрома для записи информации о памяти.

window.performance.memory

Он вернет вам следующую информацию.

  • usedJsHeapSize: общий объем памяти, используемой объектами JS, включая внутренние объекты V8,
  • totalJsHeapSize: текущий размер кучи JS, включая свободное пространство, не занятое никакими объектами JS

Также имеется библиотека js для записи статистики памяти. (https://github.com/spite/memory-stats.js)

Пожалуйста, проверьте это. Это может помочь вам. - https://developer.chrome.com/devtools/docs/javascript-memory-profiling