2015-07-18 2 views
2

Есть ли способ получить уведомление, когда браузер запускает сборку мусора? (или закончен сбор мусора)Уведомление о сборе мусора Javascript

В процессе разработки webapp было бы очень удобно получать уведомления, когда используемая куча порождала определенное значение или пропорцию после сбора мусора.

ответ

2

Простой ответ: Это зависит от реализации браузера (с текущими браузерами: NO)

Во-первых, управление памятью не является частью JavaScript, это часть окружающей среды (например, браузер). Поскольку JavaScript работает на виртуальной машине, созданной браузером, так как другие языки - это задача платформы, а не сам язык. Как и Java, JVM решает, когда запускать GC, а не Java.

Во-вторых, о части уведомления, Это зависит от реализации браузера. В настоящее время ни один известный браузер не предоставляет такую ​​функцию, чтобы уведомлять пользователя о запуске GC и его завершении. Однако информацию о памяти можно получить вручную, во время отладки, используя профилировщик браузера.

Однако информацию о ее памяти можно найти во время выполнения программы в объекте window. Вы можете реализовать свою функцию обратного вызова, чтобы получить знания об использовании памяти, используя объект window.performance.memory, когда захотите.

В хромированном состоянии предоставляется обновленная информация, если вы используете хром с переключателем --enable-memory-info.

Для Chrome Больше информации можно найти здесь: http://blog.chromium.org/2011/05/chrome-developer-tools-put-javascript.html

+0

благодарит за совместное использование –

0

Для непривилегированной JavaScript нет таких API. Но пока вы разрабатываете свое программное обеспечение, вы можете использовать инструменты профайлера/отладчика различных браузеров, чтобы наблюдать за поведением, включая сбор мусора, вашего кода.

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