Async Awaitの呼び方について
Discussion
Closed
なぜ、同期処理したい時にAsync(非同期)と呼ぶのか?
まずは同期処理と非同期処理に対する私の理解を書きたいと思います。
コードはJavascriptです。
同期処理
const res1 = func1();
console.log(res1);
const res2 = func2();
console.log(res2);
const res3 = func3();
console.log(res3);
このように記載し、標準出力が res1 --> res2 -->res3
の順番になるような処理が同期処理と考えています。func2はfunc1の処理が終了後に実行されています。func3も同様にfunc2の処理が終了後に実行されています。
次に非同期処理の例です。
const res1 = func1();
console.log(res1);
const res2 = func2(); // func2はDBからデータを取得するなどの時間のかかる処理
console.log(res2);
const res3 = func3();
console.log(res3);
このように記載し、標準出力が res1 --> undefined -->res3
の順になります。func2が処理されている時に、func3が処理されているということがわかるかと思います。
本題
Javascriptで先程の例を同期処理
したい場合にasync/await
を使われるかと思います。(もちろん、Promiseやcallbackでもかまいません。)
ここが私のわからないと言いますか、理解に苦しむところです。なぜ、同期処理
したいのに、async
とか非同期処理
って言葉を使うの?