非同期処理を同期処理のように直列化したいということはよくあることで、async.jsやjsDeferredのようなライブラリがある場合ならそれを使えばよいが、言語によっては信頼できるライブラリがなかったりする。 そういう場合は自力で直列化するコードを書く他ないが、単純なものならそう難しくないのでActionScriptでやってみた*1。エラーハンドリングをしようと思うともう少し複雑になるが、単に直列化したいだけならこれで十分だろう。 package { import flash.display.Sprite; import flash.text.TextField; import flash.utils.setTimeout; public class AsyncExample extends Sprite { private var text :TextField; private fu