Показать сообщение отдельно
Старый 23.07.2013, 12:51
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 27  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Вы используете переменные уровня класса, доступ к ним более медленный, по сравнению с доступом к переменным метода/функций. Это может сглаживать результаты.

Вот мои результаты тестов:
Array:
Код:
localLength: 200ms
arr.length: 333ms
Миллион итераций, разница скорости выполнения: 1.6

Vector (no fixed):
Код:
localLength: 88ms
arr.length: 111ms
10 миллионов итераций, разница скорости выполнения: 1.2

Vector (fixed):
Код:
localLength: 88ms
arr.length: 113ms
10 миллионов итераций, разница скорости выполнения: 1.2

Код AS3:
import flash.events.MouseEvent;
 
 
stage.addEventListener(MouseEvent.CLICK, clickHandler)
 
 
function clickHandler(e:MouseEvent):void {
	const itterations:uint		= 1000000;
	//const arr:Array				= new Array(itterations);
	const arr:Array				= new Array(itterations);
	var i:uint;
	var t1:uint;
	var t2:uint;
 
	t1							= getTimer();
	for(i = 0; i < itterations; i ++){
		arr[i];
	}
	t2							= getTimer();
	trace('localLength: '+ (t2 - t1) + 'ms');
 
	t1							= getTimer();
	for(i = 0; i < arr.length; i ++){
		arr[i];
	}
	t2							= getTimer();
	trace('arr.length: '+ (t2 - t1) + 'ms');
}
__________________
Дети не должны знать о своих родителях


Последний раз редактировалось Tails; 23.07.2013 в 13:23.