#reader-writer #locks #keyed #rwlock #key #async #tokio

key-rwlock

简单的带键异步读写锁库

3 个版本

0.1.2 2023 年 9 月 20 日
0.1.1 2023 年 5 月 31 日
0.1.0 2023 年 4 月 21 日

787并发 中排名

Download history 33/week @ 2024-03-11 28/week @ 2024-03-18 46/week @ 2024-03-25 79/week @ 2024-04-01 10/week @ 2024-04-08 22/week @ 2024-04-15 7/week @ 2024-04-22 32/week @ 2024-04-29 19/week @ 2024-05-06 8/week @ 2024-05-13 25/week @ 2024-05-20 18/week @ 2024-06-03 26/week @ 2024-06-10 18/week @ 2024-06-17 12/week @ 2024-06-24

每月下载 74

MIT 许可证

8KB
113

check test codecov Version dependency status

key-rwlock

简单的带键异步读写锁库。

示例

use key_rwlock::KeyRwLock;

#[tokio::main]
async fn main() {
    let lock = KeyRwLock::new();

    let _foo = lock.write("foo").await;
    let _bar = lock.read("bar").await;

    assert!(lock.try_read("foo").await.is_err());
    assert!(lock.try_write("foo").await.is_err());

    assert!(lock.try_read("bar").await.is_ok());
    assert!(lock.try_write("bar").await.is_err());
}

依赖关系

~2–3MB
~46K SLoC