Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

非同期イテレーター(旧称 streams)

  • 非同期イテレーターとしての Stream、または多数の Future としての Stream
  • 作業中
    • 現在の状態
    • futures と Tokio の Stream トレイト
    • nightly のトレイト
  • 同期イテレーターのように遅延的
  • ピン留めと Stream(ピン留めの章への前方参照)
  • fused Stream

非同期イテレーターの消費

  • async next を使った while let
  • for_each、for_each_concurrent
  • collect
  • into_future、buffered

Stream コンビネーター

  • クロージャーの代わりに Future を受け取る
  • いくつかのコンビネーター例
  • unordered のバリエーション
  • StreamGroup

Stream における join/select/race

  • ループ内で select を使う際の危険性
  • fusing
  • 単なる Future との違い
  • これらの代替
    • Stream::merge など

非同期イテレーターの実装

  • トレイトの実装
  • 実用上の事項とユーティリティ関数
  • async_iter stream マクロ

Sink

  • https://docs.rs/futures/latest/futures/sink/index.html

今後の作業

  • 現在の状態
    • https://rust-lang.github.io/rfcs/2996-async-iterator.html
  • async next と poll
  • 非同期イテレーション構文
  • (async)ジェネレーター
  • lending iterator