
Код AS3:
public function speedtest()
{
var eventDispatcher:EventDispatcher = new EventDispatcher()
eventDispatcher.addEventListener(Event.ACTIVATE,eventHandler)
var i:int = 10000000
var t:int = getTimer()
while (i--){
eventDispatcher.dispatchEvent(new Event(Event.ACTIVATE))
}
trace(getTimer()-t,ecount)
i = 10000000
t = getTimer()
while (i--){
eventHandler()
}
trace(getTimer()-t,ecount)
i = 10000000
t = getTimer()
while (i--){
ecount++
}
trace(getTimer()-t,ecount)
}
private var ecount:int
private function eventHandler(e:Event=null):void{
ecount++
}

Код:
13314 10000000
2773 20000000
778 30000000
Было понятно что события медленней, но не думал что более чем в три раза.
Фишка событий - это возможность цепляться на них сразу же нескольким обработчикам, когда этого не нужно, не понимаю причин их использовать. Прямых связей можно избежать другими способами.
По моему скромному представлению.