July 2025
Intermediate to advanced
284 pages
4h 4m
Japanese
「3章 非同期キューの自作」で、非同期ランタイム内での非同期タスクの実行を説明するために、非同期ランタイムキューを自作した。しかし、実行した操作は基本的なスリープとプリントだけだった。まずは単純な操作に注力するのはよいことだが、スリープとプリントだけでは何もできない。本章では、前章で定義した非同期ランタイムをネットワークと統合し、ネットワーク関連のタスクを自作ランタイム上で実行できるようにする。
本章を読めばHTTPリクエストを実行するhyperクレートのトレイトを用いて自作ランタイムに統合できるようになる。ということは、他のサードパーティ外部ライブラリクレートのドキュメントを読んで本章の手順にしたがえば外部ライブラリのトレイトを用いて、外部ライブラリを自作ランタイムに統合できるということだ。さらに、フューチャから直接ソケットをポーリングするmioクレートの実装を通じてさらに低レイヤに踏み込む。これを通じて、自作非同期ランタイムでソケットをポーリング、読み込み、書き出す方法を詳細に制御する方法を学ぶ。本章の内容をベースに参考文献を読めば、ネットワークプロトコルを自作できるようになるだろう。
本章は本書で最も難しい。自作ランタイムにネットワークを統合したいと思わないなら、省略可能だ。本章を一旦スキップして、最後まで読んでから戻ってきてもよい。本章をここに置いたのは、「3章 非同期キューの自作」で書いたコードをベースにしているからだ。
本章を進めるには、これまでに用いてきた外部ライブラリに加えて以下のライブラリが必要になる。
[dependencies] hyper = { version = "0.14.26", features ...Read now
Unlock full access