1 个稳定版本
1.0.0 | 2023年6月30日 |
---|
#1146 in 开发工具
4KB
51 行
rust_with_lock_auto
一个简单的锁定库,允许您轻松安全地访问 Arc 指针的内部
为每个 Arc
mutex.with_lock(|data| {
// do stuff
});
// this is the same but uses try_lock instead of lock().unwrap()
mutex.with_lock_try(|data| {
// do stuff
});
闭包也可以返回任何类型
您也可以简单地通过以下方式克隆内部值
let inner_value_clone = mutex.get_clone(); // if you're sure you can lock the mutex
let inner_value_clone_optional = mutex.try_get_clone(); // if you want an option that's none when the mutex can't be locked (uses try_lock internally)
但内部值当然需要实现 Clone
不引入新类型,适用于所有现有的 Arc