6个版本

0.2.2 2022年3月17日
0.2.1 2022年3月17日
0.1.2 2022年3月16日

#11 in #cross-process


proclock中使用

MIT许可

8KB
119 行代码(不包括注释)

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