Afin de vous familiariser avec la modélisation avec les coroutines,
écrire une machine d’états avec trois états modélisant
une requête GET
qui constrituera votre coroutine. Vous
devrez à l’aide de la coroutine effectuer trois requêtes
GET
concurrentes au delayserver
qui se trouve
sur le repo (chacune avec un delay différent) et les join()
de façon concurrente.
Vous devez ainsi créer une struct JoinThree
et une
fonction join_three
qui gèrera vos trois
Future
et leur complétion. Vous devez également implémenter
le trait Future
pour JoinThree
permettant de
poll()
les trois Future
. Finalement, votre
main()
devra ressembler à
fn main() {
let start = Instant::now();
let mut future = async_main();
while let PollState::NotReady = future.poll() {}
println!("Elapsed time: {}", start.elapsed().as_millis());
}