Сделал так -

Код AS3:
package
{
import flash.display.Sprite;
import flash.events.TimerEvent;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.utils.Timer;
public class Main extends Sprite
{
private var textField:TextField;
private var speedTest:TestSpeed;
private var timer:Timer;
private var num:int;
public function Main()
{
speedTest = new TestSpeed(print);
timer = new Timer(2, 1);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, timer_timerCompleteHandler);
timer.start();
}
private function timer_timerCompleteHandler(event:TimerEvent):void
{
for (var i:int = 0; i < 1000; i++)
{
num += 1;
}
speedTest.execute();
}
private var offsetY:int;
private var allRepetitions:int = 5;
private var repetitionsPerformed:int;
private function print():void
{
textField = new TextField();
textField.autoSize = TextFieldAutoSize.LEFT;
super.addChild(textField);
textField.text = "Кол-во выполений - " + ++repetitionsPerformed + " из " + allRepetitions + ", время выполнения - " + speedTest.runtime + ".";
textField.y = offsetY += 30;
if (repetitionsPerformed != allRepetitions)
timer.start();
}
}
}

Код 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;
runtime = 0;
time = getTimer();
for (var j:int = 0; j < 1000000; j++)
{
var length:int = 500;
while (length--)
{
///
}
}
runtime = getTimer() - time;
this.callback();
}
}
}
На "присвоить значение" - 5350 локальная переменная, против 5000 свойства объекта.
На "получить значение" - 5900 против 5000...