日本訳: https://y-yu.github.io/trpl-2nd-pdf/book.pdf
実装ごとにコミット分けてあります。
20.1.6 リクエストにバリデーションをかけ、選択的にレスポンスを返す
20.2.1 現在のサーバの実装で遅いリクエストをシミュレーションする
20.2.2.1 各リクエストに対してスレッドを立ち上げられる場合のコードの構造
20.2.2.2 有限数のスレッド用に似たインターフェイスを作成する
20.2.2.3 コンパイラ駆動開発でThreadPool 構造体を構築する
20.2.2.6 ThreadPoolからスレッドにコードを送信する責任を負うWorker構造体
20.2.2.7 チャンネル経由でスレッドにリクエストを送信する