【VectorFixedTest】Vector.fixedプロパティと処理速度との関係

by wetcradle
Vectorのfixedプロパティをtrueにすると、
もしかして高速になるかも!?と思って実験。
結果は処理速度とは関係無さそう。
fixedプロパティは単なる宣言か。
♥0 | Line 31 | Modified 2010-03-20 07:51:24 | MIT License
play

ActionScript3 source code

/**
 * Copyright wetcradle ( http://wonderfl.net/user/wetcradle )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/1r9y
 */

/*
Vectorのfixedプロパティをtrueにすると、
もしかして高速になるかも!?と思って実験。
結果は処理速度とは関係無さそう。
fixedプロパティは単なる宣言か。
*/

package {
	import flash.display.Sprite;
	import flash.text.TextField;
	public class VectorFixedTest extends Sprite {
		private const LENGTH:int = 1e+7;
		public function VectorFixedTest():void {
			var textField:TextField = new TextField();
			textField.width = textField.height = 400;
			addChild(textField);
			textField.text = "fixed, unfixed\n";
			var fixedSum:Number = 0;
			var unfixedSum:Number = 0;
			for (var i:int=0; i<20; i++) {
				var fixed:Number = doTest(true);
				var unfixed:Number = doTest(false);
				fixedSum += fixed;
				unfixedSum += unfixed;
				textField.appendText(String(fixed)+", "+String(unfixed)+"\n");
			}
			textField.appendText(String(fixedSum)+", "+String(unfixedSum)+"\n");
		}
		private function doTest(fixed:Boolean):Number {
			var startDate:Date = new Date();
			var vector:Vector.<int> = new Vector.<int>(LENGTH, fixed);
			for (var i:int=0; i<LENGTH; i++) {
				vector[i] = i;
			}
			return new Date().time - startDate.time;
		}
	}
}