#channel #value #update #single #non-blocking #latest

single_value_channel

并发单值更新和接收通道

5 个稳定版本

1.2.2 2021 年 2 月 21 日
1.2.1 2019 年 8 月 26 日
1.2.0 2019 年 4 月 4 日
1.1.0 2017 年 6 月 29 日
1.0.0 2017 年 6 月 21 日

并发 中排名 398

Download history 67/week @ 2024-03-14 80/week @ 2024-03-21 121/week @ 2024-03-28 98/week @ 2024-04-04 87/week @ 2024-04-11 83/week @ 2024-04-18 111/week @ 2024-04-25 129/week @ 2024-05-02 55/week @ 2024-05-09 62/week @ 2024-05-16 49/week @ 2024-05-23 50/week @ 2024-05-30 50/week @ 2024-06-06 77/week @ 2024-06-13 156/week @ 2024-06-20 205/week @ 2024-06-27

每月 492 次下载
4 crates 中使用

Apache-2.0 许可

13KB
212

single_value_channel crates.io 文档

非阻塞单值更新和接收通道。

此模块提供了一种最新消息风格的通道,更新源可以以几乎非阻塞的方式更新接收者拥有的最新值。

mpsc::channel 不同,每次发送的值都会覆盖 '最新' 值。有关更多详细信息,请参阅 文档

use single_value_channel::channel_starting_with;
use std::thread;

let (mut receiver, updater) = channel_starting_with(0);
assert_eq!(*receiver.latest(), 0);

thread::spawn(move|| {
    updater.update(2); // next access to receiver.latest() -> 2
    updater.update(12); // next access to receiver.latest() -> 12
}).join();

assert_eq!(*receiver.latest(), 12);

最低支持的 Rust 编译器

此 crate 使用 最新稳定版 Rust 进行维护。

无运行时依赖