[osflash] Help: test EventDispatcher speed please

Travis Johnson Travis.Johnson at nwea.org
Tue Mar 20 10:50:01 EST 2007


EventBroadcaster: 3079

EventDispatcher: 1854

WIN 9,0,28,0

 

Firefox 2.0.0.2 - Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
rv:1.8.1.2) Gecko/20070219 Firefox/2.0.0.2

 

________________________________

From: osflash-bounces at osflash.org [mailto:osflash-bounces at osflash.org]
On Behalf Of Francis Bourre
Sent: Tuesday, March 20, 2007 8:35 AM
To: osflash at osflash.org
Subject: [osflash] Help: test EventDispatcher speed please

 

Hello list !

 

I noticed something weird about EventDispatcher execution speed in my
mac player.

EventDispatcher.dispatchEvent execution is slow compared to a custom
dispatcher implementation (named EventBroadcaster).

 

On Mac, EventDispatcher is slow:

EventBroadcaster: 2925

EventDispatcher: 12438

 

On Pc, EventDispatcher is faster.

EventBroadcaster: 3908

EventDispatcher: 3407

 

Can you please report the values you got (displayed on screen) when you
open the url below and the browser you used for testing.

It takes few seconds to initialize (bench with iterations)

 

http://www.tweenpix.net/TestEventBroadcaster.swf

 

Any clue is welcome. ;)

Thanks in advance guys !

 

francis

 

 

 

Content of the test:

 

var tf1 : TextField = new TextField();

var tf2 : TextField = new TextField();

var tf3 : TextField = new TextField();

tf2.y += 30;

tf3.y += 60;

tf1.width = tf2.width = tf3.width = 150;

this.addChild( tf1 );

this.addChild( tf2 );

this.addChild( tf3 );

                                    

var holder : Array = new Array();

var l1 : Number = 10000;

var l2 : Number = 10000;

var lNum : Number = 500;

            

var eb : EventBroadcaster = new EventBroadcaster ( this );

var ed : EventDispatcher = new EventDispatcher ();

                                    

while( --lNum -(-1) )

{

            var tg : Object = {foo:function( e : Event ):void{ this.e =
e.type; }};

            ed.addEventListener( "foo", tg.foo );

            eb.addEventListener( "foo", tg );

            holder.push( tg );

}

 

var t : Number = 0;

var e : Event = new Event( "foo" );

       

//

t = getTimer();

while( --l2 -(-1)) eb.broadcastEvent( e );

t = getTimer() - t;

trace( "EventBroadcaster: ", t );

tf1.text = "EventBroadcaster: " + t;

//

t = getTimer();

while( --l1 -(-1)) ed.dispatchEvent( e );

t = getTimer() - t;

trace( "EventDispatcher: ", t );

tf2.text = "EventDispatcher: " + t;

 

tf3.text = flash.system.Capabilities.version;

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://osflash.org/pipermail/osflash_osflash.org/attachments/20070320/5e5d38c6/attachment.htm


More information about the osflash mailing list