タグ

asyncに関するkoichi7777のブックマーク (1)

  • Node.jsのためのasync必修パターン(1): 同期パターン

    node.jsはnon-blocking処理を行うため、書き手の意図しない順序で処理が実行されることがあります。それでは困ることもあるため同期をとって処理を行うパターンについて書きます。例えばA、B、C、Dという処理があり、A、B、Cの3つが終わってからDが行われることを保証したい場合の必須のパターンです。 A、B、Cという3つの処理では、それぞれDBに問い合わせを行い、Dという処理では3つのDB問い合わせの結果を使って集計の処理を行いたいような場面を考えてみます。a(); b(); c(); d();上のように普通に書くと、node.jsでは折々の状況に応じてaからdまでの処理を非同期に実行します。dが一番最初に実行されるかもしれません。困ります。そこで、A、B、Cの3つの処理が3つとも完了した後にDが実行されるようにするパターンを書きます。// sync.js var wait = f

  • 1