July 2025
Intermediate to advanced
284 pages
4h 4m
Japanese
本章ではRustで非同期を用いる際に重要な構成要素を紹介し、タスク、フューチャ、async、awaitについて概観する。さらに、コンテクスト、ピン留め、ポーリング、クロージャについても説明する。これらはRustの非同期プログラミングを十分に活用するために重要な概念だ。本章に示す例は学習のポイントを示すように選択している。したがって効率の点で最良なものであるとは限らない。本章の末尾には、これらの概念をすべて用いた例として、機密性の高いデータを扱うプログラムに対する非同期の監視ロガーを示す。
本章を読めば、タスクとフューチャを定義できるようになる。また、フューチャの技術的な構成要素であるコンテクストとピン留めについての理解が得られる。
非同期プログラミングにおいては、非同期操作はタスク(task)として表現される。タスクベースの非同期パターン(TAP:task-based asynchronous pattern)は、非同期コードを抽象化したものだ。一般に、コードは一連の文(statement)の並びとして書かれる。これを、1つの文の実行が終わってから、次の文の実行が始まるように読むことができる。例えば、コーヒーとトーストを用意することを考えてみよう。これには以下のステップが必要になる。
非同期プログラミングを用いれば、この手続きのスピードを確実に向上できるが、まずはこれらのステップを2つの大きなステップ、「コーヒーを淹れる」と「トーストを作る」に分けよう。
Read now
Unlock full access