Цитата:
|
А есть где то мануал как искать утечки в хроме/фф? :blink:
|
Внимание, тест сожрет много памяти...
alert( "перед запуском посмотри запомним занимаемое количество памяти браузером" ); var a = []; for( var i = 0; i < 20000; i++ ) { a[ i ] = []; for( var j = 0; j < 1000; j++ ) { a[ i ][ j ] = "blah"; } } alert( "теперь смотри сколько заняло" ); a = null; alert( "а теперь должно освободиться место в памяти" ); alert( "пробуем другой пример" ); var b = []; for( var i = 0; i < 20000; i++ ) { b[ i ] = []; for( var j = 0; j < 1000; j++ ) { b[ i ][ j ] = "blah"; } } alert( "запомнил?" ); delete window.b; alert( "а теперь должно освободиться место в памяти" );Вывод, сборщик не всегда срабатывает после уничтожения объектов... то есть память может быть не освобождена перед использованием нового объекта. а сборщик мусора сделает свое дело тогда когда захочет.. Тоесть что null что delete не всегда эффективно... все зависит от интервала сборки мусора сборщиком. Тестил на Opera 11.60 как будет в других не смотрел. |
А обязательно очищать массив? Ведь браузер сам же очищает и без delete/null
|
Цитата:
Цитата:
|
devote,
переменную удалить нельзя, вы о чём вообще? У переменных configurable установлено в false, если конечно они не созданы через eval. |
Цитата:
|
Часовой пояс GMT +3, время: 01:25. |