7个版本 (稳定)
1.2.0 | 2024年8月6日 |
---|---|
1.1.0 | 2023年12月17日 |
1.0.2 | 2022年3月7日 |
1.0.1 | 2018年12月4日 |
0.3.0 | 2016年6月21日 |
#111 在 并发 中
每月下载量:2,468
在 9 个crates中使用了 (直接使用3个)
36KB
478 行
guardian
Guardian 是一个Rust库,它为引用计数的互斥锁提供所有权的互斥量守卫。
通常,锁守卫(无论是针对 Mutex
还是 RwLock
)绑定到底层锁的借用生命周期。具体来说,函数签名都类似于:fn lock<'a>(&'a self) -> Guard<'a>
。
如果使用 Rc
或 Arc
来引用计数的互斥锁,则没有必要以这种方式为守卫指定作用域——它可以携带对相关互斥锁的引用,这使得守卫可以保持必要的时间。这对于编写迭代器特别有用,因为在迭代期间保持读锁是有利的。