gpt4 book ai didi

rust - 如何使用 Serde 反序列化 parking_lot::Mutex?

转载 作者:行者123 更新时间:2023-11-29 08:13:33 25 4
gpt4 key购买 nike

我有一个内存结构 ( obj ) 包裹在 Arc<Mutex> 中. Mutexstd::sync::Mutex 的改进版本在 parking_lot 箱子里。我需要反序列化包装对象 ( obj ),但是,我收到一个错误:

the trait `_IMPL_DESERIALIZE_FOR_SecurityLevel::_serde::Deserialize<'_>` is not implemented for `lock_api::mutex::Mutex<parking_lot::raw_mutex::RawMutex, Obj>`

在我的 Cargo.toml 中,我有(特别是):

serde = { version = "1.0.89", features = ["rc"] }
parking_lot = {version = "0.8", features = ["nightly"]}

我该怎么办?是否有解决方法,或者我必须手动实现这些特征?

最佳答案

parking_lot 0.8 在 serde 下添加了对 Serde 的支持 feature flag :

parking_lot = { version = "0.8", features = ["nightly", "serde"] }

使用它,您提供的代码可以编译。这也编译:

use parking_lot::Mutex;
use serde::{Deserialize, Serialize};

fn implements<T>()
where
Mutex<T>: for<'a> Deserialize<'a> + Serialize,
{
}

关于rust - 如何使用 Serde 反序列化 parking_lot::Mutex?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56156876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com