zlacker

[parent] [thread] 3 comments
1. vablin+(OP)[view] [source] 2025-12-03 15:01:50
I feel async is in a very good place now (apart from async trait :[ ) As a regular user who isn't developing libraries async is super simple to use. Your function is async = it must be .await and must be in an async runtime. Probably as simple and straightforward as possible. There are no super annoying anti-patterns to deal with.

The ecosystem being tokio centric is a little strange though

replies(1): >>leshow+Dr
2. leshow+Dr[view] [source] 2025-12-03 17:05:43
>>vablin+(OP)
I love Rust and async Rust, but it's not true that there aren't annoying things to deal with. Anyone who's written async Rust enough has run into cancel-safety issues, the lack of async Drop and the interaction of async and traits. It's still very good, but there are some issues that don't feel very rust-y.
replies(2): >>pornel+XF >>junon+Ct1
◧◩
3. pornel+XF[view] [source] [discussion] 2025-12-03 18:11:41
>>leshow+Dr
I've been writing async Rust for as long as it existed, and never ran into any cancel-safety issue. However, I also never used tokio's select macro.
◧◩
4. junon+Ct1[view] [source] [discussion] 2025-12-03 22:13:07
>>leshow+Dr
I don't really appreciate the superlative here as I too have not run into cancel safety issues in practice.
[go to top]