てがみ: qatacri at protonmail.com | 統計 | 2020

202019901

Rust の Future が思ったより複雑。とりあえず futures が持っている関数を自前で実装してみようと Future -> Context -> Waker ... とドキュメントを辿っていくと、妙にローレベルなものが出現する。

core::task::RawWaker - Rust
core::task::RawWakerVTable - Rust

dyn trait を使わずなぜか vtable を自作している。それ以前に Context は Waker を保持しているだけで存在意義がよく分からない。ライフタイム関連かと思ったけれど、そうでもない気がする。