Skip to main content
Journey Uncommon Logo
JourneyUncommon
hardRustSend and Sync auto traitsSingle-choice MCQ

An async block ends up `!Send` even though every type it names is `Send`. Under the hood, what determines whether the generated `Future` is `Send`?

use std::rc::Rc; async fn yield_now() { /* ... awaits ... */ } let fut = async { let r = Rc::new(0); yield_now().await; drop(r); }; // is `fut: Send` ?