在我的rust项目中,cargo抱怨使用tokio::sync:
时使用的类型不在作用域中。use tokio::sync::RwLock;
| ^^^^^ use of undeclared crate or module `tokio`
,但它显然在范围内:
use tokio::sync::RwLock;
#[derive(Deserialize, Serialize)]
pub struct MyStruct {
some_field: RwLock<SomeType>
}
根据文档,同步模块只有在启用sync
特性标志后才可用,我已经显式和隐式地完成了这一点:
tokio = { version = "0.3", features = ["macros", "sync"] }
tokio = { version = "0.3", features = ["full"] }
但是两者都不行
我没有注意到我在dev-dependencies下只有tokio,这就是为什么cargo不能编译这个项目的原因。