コルーチンに関するyimajoのブックマーク (1)

  • 非同期メソッド入門 (7) - 内部実装を覗く - xin9le.net

    非同期メソッドはまるで魔法のようです。非同期処理が同期処理とほとんど同じ書き方ができるなんて、もはや革命です。「今まで非同期処理のコーディングに充ててきた時間をすべて返してほしい」とさえ言いたくなるくらいです。けれどそんな素敵な非同期メソッドも、何かカラクリがあってこのような機能になっているはずです。今回はこれを少し紐解いてみましょう。 アプローチ 調査するにもキッカケが何もないとアレなので、以下のような仮定を立てて話を進めます。 async/awaitは何かの糖衣構文で、実際はコンパイラがもっと複雑な形に変換している exeやdllには変換後の形で格納されている C#/VB.NETなどの.NET Framework上で動作する言語は、コンパイルすると中間言語(IL)という形に変換されexeやdllに格納されます。(都合の良いことに)世の中にはexeやdllからILを取り出し、逆コンパイル

    非同期メソッド入門 (7) - 内部実装を覗く - xin9le.net
    yimajo
    yimajo 2018/08/05
    C#だとasync/awaitがステートマシン構造体になるのか
  • 1