Показать сообщение отдельно
Старый 05.02.2009, 23:26
orcpochta вне форума Посмотреть профиль Отправить личное сообщение для orcpochta Найти все сообщения от orcpochta
  № 3  
Ответить с цитированием
orcpochta

Регистрация: Feb 2008
Сообщений: 890
Все-таки попытаюсь спросить еще раз как высвобождать память. Начнем с легкого примера:

Код:
var arr:Array = [];
clip1.onRelease = function( ):Void {
	generateArr(100000);
};
clip2.onRelease = function( ):Void {	
	delArr();
};

function generateArr(n:Number):Void {
	for (var i:Number = 0; i < n; i++) {
		arr.push(Math.floor(Math.random() * n));
	}
}
function delArr():Void {	
	delete arr;
}
Смотрю в Windows Task Manager. Жму на clip1 память резко отжирается, жму на clip2 - с памятью ничего не происходит, жду долго - ноль эффекта. Но, если нажать еще раз на clip1, то память сокращается, но на примерно вдвое меньшее число, чем то число, на которое она увеличилась при нажатии на clip1 - этого я вообще понять не могу, ибо для меня это как-то все алогично...
__________________
скриптограф