自分用の長椅子

by nariyu
♥1 | Line 88 | Modified 2010-03-03 17:14:38 | MIT License
play

ActionScript3 source code

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

<?xml version="1.0" encoding="utf-8"?>
<mx:Application
	xmlns:mx="http://www.adobe.com/2006/mxml"
	layout="vertical">
	<mx:Script>
		<![CDATA[
			
			// 1: なにもしない。ループだけ。
			private function bench1():void
			{
				var n:uint = repeatNum.value;
				var s:uint = getTimer();
				for (var i:int = 0; i < n; i++)
				{
				}
				bench1Text.text = (getTimer() - s) + " ms";
			}
			
			// 2: イベントを発射してみる。
			private function bench2():void
			{
				var n:uint = repeatNum.value;
				var s:uint = getTimer();
				for (var i:int = 0; i < n; i++)
				{
					dispatchEvent(new Event("sonzaishinai-event-desuyo"));
				}
				bench2Text.text = (getTimer() - s) + " ms";
			}
			
			// 3: メソッド呼び出ししてみる
			private function bench3():void
			{
				var n:uint = repeatNum.value;
				var s:uint = getTimer();
				for (var i:int = 0; i < n; i++)
				{
					testFunc();
				}
				bench3Text.text = (getTimer() - s) + " ms";
			}
			private function testFunc():Number
			{
				return 1 + 1;
			}
			
			// trace("hoge") してみる
			private function bench4():void
			{
				var n:uint = repeatNum.value;
				var s:uint = getTimer();
				for (var i:int = 0; i < n; i++)
				{
					trace("hoge");
				}
				bench4Text.text = (getTimer() - s) + " ms";
			}
			
			// 計算してみる。
			private function bench5():void
			{
				var n:uint = repeatNum.value;
				var s:uint = getTimer();
				for (var i:int = 0; i < n; i++)
				{
					var result:Number = 1 + 1;
				}
				bench5Text.text = (getTimer() - s) + " ms";
			}
		]]>
	</mx:Script>
	<mx:Label text="ちょっとベンチ" fontSize="13" fontWeight="bold"/>
	<mx:HBox>
		<mx:Label text="ループ回数"/>
		<mx:NumericStepper id="repeatNum" minimum="10" maximum="10000000"
						   stepSize="10" value="100000"/>
	</mx:HBox>
	<mx:HBox>
		<mx:Button label="なにもしない。ループだけ。" click="bench1()"/>
		<mx:Text id="bench1Text"/>
	</mx:HBox>
	<mx:HBox>
		<mx:Button label="イベントを発射してみる" click="bench2()"/>
		<mx:Text id="bench2Text"/>
	</mx:HBox>
	<mx:HBox>
		<mx:Button label="メソッド呼び出ししてみる" click="bench3()"/>
		<mx:Text id="bench3Text"/>
	</mx:HBox>
	<mx:HBox>
		<mx:Button label="trace(&quot;hoge&quot;) してみる" click="bench4()"/>
		<mx:Text id="bench4Text"/>
	</mx:HBox>
	<mx:HBox>
		<mx:Button label="計算してみる" click="bench5()"/>
		<mx:Text id="bench5Text"/>
	</mx:HBox>
</mx:Application>