rust
Non-Send type held across .await
async fn.*is not.*Send.*because.*held across.*await
Fixes
- 1.Drop non-Send value before .await point
- 2.Use Send-compatible alternatives (Mutex vs RefCell)
- 3.Restructure async fn to limit non-Send scope
rustasyncsend
Related Errors
rust3 fixes
Future not Send due to non-Send type
future cannot be sent between threads safely.*Send
- •Use Arc<Mutex<T>> instead of Rc<RefCell<T>>
- •Add Send bound or spawn_local for !Send futures
rust3 fixes
Future requires Unpin but type doesn't implement it
cannot be unpinned.*Unpin.*is not implemented
- •Use Box::pin() to pin the future on heap
- •Use pin_mut! macro for stack pinning
rust3 fixes
Type doesn't implement Future trait
the trait.*Future.*is not implemented for
- •Ensure async fn returns impl Future
- •Use .await on async calls