3个版本
0.1.2 | 2024年7月30日 |
---|---|
0.1.1 | 2024年7月22日 |
0.1.0 | 2024年7月22日 |
199 在 操作系统
每月390次下载
8KB
112 行
alive_lock_file
一个简单的crate,用于创建锁文件而不会产生死锁。为此,它使用了以下两种方法:
- 将提供的路径连接到
$XDG_RUNTIME_DIR
环境变量。此目录会自动由系统清理,并挂载为ramfs。 - 拦截信号
用法
use alive_lock_file::{init_signals, LockFileState};
fn main() {
// intercept the `SIGINT` and `SIGTERM` signals.
init_signals();
match LockFileState::try_lock("file.lock").unwrap() {
LockFileState::Lock(_lock) => {
// while _lock is in scope, `file.lock` will not be removed
}
LockFileState::AlreadyLocked => {}
};
}
依赖项
~2–12MB
~85K SLoC