Показать сообщение отдельно
Старый 09.04.2014, 22:46
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 10  
Ответить с цитированием
Akopalipsis
Banned

Регистрация: Mar 2013
Сообщений: 1,864
TestSpeed это класс, где скорость и замеряется, я его в отдельный вынес класс вынес и поставил таймер, только для того, чтобы дать плееру, как следует запустится. Если делаю, как в первом примере, то и разница такая же. А цикл в цикле сделал, потому что читал где-то про разницу работы кода в зависимости от кол-ва итераций. Типа, один и тот же код будет медленнее работать при 100 итераций и быстрее при 1 000 000. Но я тестирую код, который миллион не когда не увидит и хотелось бы точнее уточнить, как он на малых кол-вах итераций работает. Вот и пришлось цикл в цикле делать. А скаут, разницы во времени такую мизерную, как-будто не замечает, а я именно за неё и борюсь.

Код AS3:
package 
{
	import flash.utils.getTimer;
	public class TestSpeed
	{
		private var time:Number = 0;
		public var runtime:Number;
		private var callback:Function;
 
		public function TestSpeed(callback:Function)
		{
			this.callback = callback;
		}
 
		public function execute():void
		{
			var value:ValueClass = new ValueClass();
			var valueValue:int = value.value;
			var num:int;
			runtime = 0;
			time = getTimer();
			for (var j:int = 0; j < 1000; j++)
			{
				var length:int = 500;
				while (length--)
				{
					value.value +=1;
				}
			}
			runtime = getTimer() - time;
 
			this.callback();
		}
	}
 
}