こんにちは、サイオステクノロジー武井です。今回はasync/awaitの動きをOSカーネルのレイヤーから追うことで理解を深めようとしてみます。 1. async/awaitはむずい async/await、なかなかにとっつきにくい概念だと思います。 「非同期処理には async を付ける」「await しないと結果が取れない」——ルールとしては覚えられます。コードも動きます。でも、こんな疑問にぶつかった経験はないでしょうか。 await している間、プログラムは「止まって」いるの? 止まっていないの? 「待つ」のに、なんで速くなるの? await を付け忘れると Promise が返ってくるのはなぜ? そもそも誰が「処理が終わった」ことに気づいて、続きを実行してくれるの? これらイベントループやepollの仕組みを知っていると、スッキリ解決するのではと思い、今回、一筆したためました。 キー

