Если вы вызовете dispatchEvent()
в ActionScript, обработчики будут выполнены немедленно. Порядок определяется сначала приоритетом, указанным при вызове addEventListener()
, а затем порядком, в котором они были добавлены, если приоритеты совпадают. Первый пришел, первый обслужен.
Если событие отправляется из Flash Player изнутри, например, Event.COMPLETE
из экземпляра URLLoader
или чего-либо еще, что требует сетевого взаимодействия, оно не будет отправлено во время работы ActionScript. Это ставится в очередь на потом. Я полагаю, что именно для того, чтобы избежать состояния гонки, описанного в документации. Я полагаю, что было замечено, что «позже» - это следующий кадр, но это может произойти после того, как все другие ActionScript для текущего кадра будут запущены.