У меня в основном есть объект, из которого я вызываю две функции и три функции.
function func1()
M.mfunc1( 'updateSomething' );
// do some stuff
M.mfunc2();
}
function func2 () {
M.mfunc1 ( 'hitSomething' );
// does something but line is stable
M.mfunc2();
}
function func3 () {
M.mfunc1 ( 'doesSoemthing' );
//does nothing, but causes memory to grow
M.mfunc2();
}
M.mfunc1 = function ( name ) {
// code is all commented out
}
M.mfunc2 = function () {
// code is all commented out
}
func1
n вызывается в главном цикле с использованием setTimeout.При использовании инструментов разработчика Chromes на временной шкале, отслеживающей память, память неожиданно увеличивается при вызове func3
, но если я закомментирую вызовы M
, она останется стабильной.Я прибегнул к комментированию всего из M.mfunc1
и M.mfunc2
, и, просто назвав его одиноким, это приводит к увеличению использования памяти.
Теперь кто-нибудь может мне это объяснить?1013 * Обновление : я сделал свой код более похожим на то, что есть на самом деле.
Обновление 2 : поскольку приведенный мной пример кода не является проблемой, вот ссылка на весь код: http://test.startailpro.co.uk/breaking/
Функцииupdate
, updateDirection
, hitBlock
, doesBall_hitBlock
, MEMORY.deep
и MEMORY.rise
.