水木社区手机版
首页
|版面-编程技术(Programming)|
新版wap站已上线
展开
|
楼主
|
同主题展开
|
溯源
|
返回
上一篇
|
下一篇
|
同主题上篇
|
同主题下篇
主题:Re: 切实感受到了 rust 的强大
tsa300
|
2025-11-01 00:54:21
|
最佳实践是异步环境用异步锁,你的问题是axum异步框架下用了同步锁 std:sync:MutexGuard
除非明确的单线程环境,比如tokio::task::spawn_local(不要求Send,但会带来阻塞),否则跨 await 持有同步锁会被编译器阻止。编译器通过要求 send 阻止你这么做的原因是标准库的同步锁是按 posix标准用OS线程原语实现的,必须确保同线程操作锁,而跨await无法保证这一点。异步锁就没这问题,可以安全跨await持有
--
FROM 123.120.4.*
上一篇
|
下一篇
|
同主题上篇
|
同主题下篇
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版