#channel #linear #handshake #symmetric #time #bidirectional #receive

bin+lib oneshot-handshake

提供对称单次使用通道类型的crate

6个版本

0.1.5 2024年6月27日
0.1.4 2024年6月18日

#682 in 异步

Download history 327/week @ 2024-06-17 138/week @ 2024-06-24 64/week @ 2024-07-01

每月66次下载

MIT许可协议

21KB
311

握手

对称单次使用通道。

示例

允许握手的每一端发送或接收信息,以实现数据的双向移动

let (u, v) = oneshot_handshake::channel::<Box<str>>();
let combine = |x, y| format!("{} {}!", x, y);

'_task_a: {
    u.join("Handle Communication".into(), combine)
        .unwrap()
        .map(|s| println!("{}", s));
} // None

'_task_b: {
    v.join("Symmetrically".into(), combine)
        .unwrap()
        .map(|s| println!("{}", s));
} // Some(())

无运行时依赖