6 个版本
0.2.2 | 2022 年 3 月 17 日 |
---|---|
0.2.1 | 2022 年 3 月 17 日 |
0.1.2 | 2022 年 3 月 16 日 |
#4 in #cross-process
9KB
106 行
由 Tabnine 热爱地开发
请注意:此crate已被重命名
它曾经是 proclock
,但现在已被重命名为 proc-lock。
请更新您的依赖项以接收较新版本。
Proclock
简单的跨进程锁定 API。
快速入门
安装
在您的 Cargo.toml
文件中,添加
[dependencies]
proclock = "*"
直接使用 API
use proclock::{lock, LockPath};
let lock_path = LockPath::Tmp("my_lock.lock");
let guard = lock(&lock_path).unwrap();
// Until `guard` is dropped, this code section is atomic across multiple processes.
// ...
drop(guard);
使用宏
use proclock::proclock;
fn main() {
// A lock will be acquired at the beginning of this function, and will be released at the end.
a_sensitive_function();
}
#[proclock(name = "my_lock.lock")]
fn a_sensitive_function() {}
当前状态
⚠️此crate处于早期阶段,预计在未来的版本中会有破坏性更改。
变更列表
- 0.2.1 - 添加关于crate重命名的通知
- 0.2.0 - [破坏性更改] 停止支持非阻塞宏 API
依赖项
~2MB
~44K SLoC