调用AS3侦听器时,代码流会发生什么?

时间:2015-01-28 22:03:51

标签: flash event-handling actionscript-3

更具体地说,我想知道在调用侦听器以在AS3中处理此事件时,以下代码会发生什么。 实际上,在函数handleAnyEvent()正在运行时流程是否被中断,或者流是否继续,在handleAnyEvent()正在另一个线程中运行时调用其他函数。 任何人都可以解释这段代码的异常流程吗?

anything.addEventListener(Event.ANY_EVENT, handleAnyEvent);
function handleAnyEvent(e:Event):void{
//Do something here
}

anything.dispatchEvent(new Event(Event.ANY_EVENT));
somefunction();
otherfunction();
examplefunction();

2 个答案:

答案 0 :(得分:1)

是的,dispatchEvent阻止。但是,假设事件处理程序将花费大量时间,因为ActionScript几乎没有办法执行像I / O这样的非平凡阻塞操作。

答案 1 :(得分:1)

Flash在单个线程中运行。 (是的,有工人,但这不是事件系统默认使用的)