Я вызываю функцию 50 раз в секунду, которая делает некоторые дорогостоящие вещи, так как много рисует на элементе <canvas>
.
Она прекрасно работает, проблем нет, но я просто взялапосмотрите на использование памяти, и она крала 1 МБ в секунду моей оперативной памяти.Похоже, что Chrome собирает мусор каждую минуту или около того, но его использование снова растет.
Я пытался поместить return
в определенные места в моей функции, чтобы решить, какая часть моегоФункция точно вызывает утечку.Мне удалось сократить его до определенной строки кода, после которой появляется злая часть, но я не знаю, как ее решить.
Мои вопросы:
- Какой инструмент доступен для эффективного измерения утечек памяти JavaScript в Chrome?
- Было бы эффективно установить переменные на
null
/ undefined
после их использования, что-то вроде их утилизации?
Если исходный код действительно необходим, я бы не колебался размещать его здесь, но должен признать, что он и длинный, и, возможно, немного непонятный для других.