Принудительная сборка мусора в Google Chrome
Мы разрабатываем одностраничное веб-приложение сZK который постоянно общается с сервером и обновляет части его экранов. Обновление может быть так часто, как 1 с. Во время этих обновлений ссылки на большие суммыJS объекты теряются, и эти объекты должны быть в конечном итоге очищены сборщиком мусора.
Насколько мыКак мы выяснили, Chrome запускает сборщик мусора только на неактивных вкладках. Это проблема для нас, потому что приложениеВкладка s обычно активна и почти никогда не обновляется, поэтомуJS объекты никогда не собираются. Если оставить активным в течение достаточного времени, вкладка в конечном итоге вылетает (Aww Snap сообщение).
Нам нужно запустить сборку мусора вручную. Пока мыпопробовал запустить Chrome с--js-flags="--expose-gc"
и работаетgc()
, но это выдает исключение:
ReferenceError: gc is not defined
Это неэто происходит в Firefox - использование памяти более или менее постоянно.
Принудительное обновление страницы не вариант.
Мы будем благодарны за любые предложения.
РЕДАКТИРОВАТЬ: мымы пробовали бежатьwindow.gc()
а такжеgc()
оба на версиях Chrome23.0.1271.97 m
а также "25.0.1364.2 dev-m