31 个发布版本 (14 个稳定版)
2.1.11 | 2024年2月17日 |
---|---|
2.1.10 | 2023年7月16日 |
2.1.9 | 2023年2月8日 |
2.1.6 | 2022年7月16日 |
0.0.17 | 2015年6月26日 |
在 Unix APIs 中排名 33
每月下载量 11,097
在 33 个 crate 中使用(直接使用11个)
21KB
281 代码行,不包括注释
名称
file-lock - 使用 POSIX 建议记录锁进行文件锁定
此 crate 通过 fcntl() 提供了根据 UNIX IEEE Std 1003.1-2001 (POSIX.1) 规定的建议记录锁方案来锁定和解锁文件的功能。
用法
extern crate file_lock;
use file_lock::{FileLock, FileOptions};
use std::io::prelude::*;
fn main() {
let should_we_block = true;
let lock_for_writing = FileOptions::new().write(true).create_new(true);
let mut filelock = match FileLock::lock("myfile.txt", should_we_block, lock_for_writing) {
Ok(lock) => lock,
Err(err) => panic!("Error getting write lock: {}", err),
};
filelock.file.write_all(b"Hello, World!").is_ok();
// Manually unlocking is optional as we unlock on Drop
filelock.unlock();
}
文档
支持
请在此处报告任何错误或功能请求:
请随意分叉存储库并提交拉取请求 :)
依赖关系
另请参阅
作者
Corey Richardson
Ed Branch
Jacob Turner
Mateusz Kondej
Michael Lohr
Quang Luong
Sebastian Thiel
保证
不提供任何形式的保证。
版权和许可证
MIT 许可证
版权所有 (c) 2021 Alfie John
以下条件,任何获得此软件及其相关文档副本(“软件”)的人均可免费使用、复制、修改、合并、发布、分发、再许可或出售软件副本,并允许提供软件的人进行此类操作:
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任承担责任,无论责任产生于合同、侵权或其他原因,以及与软件、软件的使用或其他与软件相关的行为有关。
许可证
许可方式为以下之一
- Apache License, Version 2.0, (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 https://opensource.org/licenses/MIT)
由您选择。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义的,您有意提交以包含在本作品中的任何贡献,将按上述方式双许可,不附加任何额外条款或条件。
依赖项
~225KB