#access #mutex #safe #synchronized #lock-free #one-time #once

oncemutex

提供一次性同步访问,然后安全非同步访问的互斥锁

8 个版本

使用旧的 Rust 2015

0.1.1 2016 年 1 月 12 日
0.1.0 2016 年 1 月 12 日
0.0.6 2015 年 2 月 6 日
0.0.5 2014 年 12 月 16 日

#592并发

Download history 24854/week @ 2024-01-05 25046/week @ 2024-01-12 25552/week @ 2024-01-19 25861/week @ 2024-01-26 24998/week @ 2024-02-02 25491/week @ 2024-02-09 27210/week @ 2024-02-16 29070/week @ 2024-02-23 32427/week @ 2024-03-01 29312/week @ 2024-03-08 29870/week @ 2024-03-15 28318/week @ 2024-03-22 27765/week @ 2024-03-29 29620/week @ 2024-04-05 32384/week @ 2024-04-12 26938/week @ 2024-04-19

121,984 每月下载量
用于 40 个包 (3 直接)

MIT/Apache

7KB
143

OnceMutex

提供一次性同步访问,然后安全无锁访问的互斥锁。

用法

使用 crates.io 仓库;将其添加到您的 Cargo.toml 文件中,与其他依赖项一起

[dependencies]
once-mutex = "*"

作者

Jonathan Reem 是 OnceMutex 的主要作者和维护者。

许可证

MIT/Apache-2.0


lib.rs:

一个只能锁定一次的互斥锁,但在第一次锁定之后提供非常快的并发读取。

示例


let mutex = OnceMutex::new(8);

// One-time lock
*mutex.lock().unwrap() = 9;

// Cheap lock-free access.
assert_eq!(*mutex, 9);

无运行时依赖