#tokio #channel #async-channel #mpsc #async #helper

tokio-non-async

处理非异步代码中tokio通道的帮助工具

3个版本

0.1.2 2020年7月20日
0.1.1 2020年7月18日
0.1.0 2020年7月18日

#2034 in 异步

自定义许可证

6KB
81

以阻塞方式处理非异步代码中tokio通道的帮助工具

let (mut tx, mut rx) = mpsc::channel(10);

for i in 0i32..10 {
    tx.send(i).await.unwrap();
}

drop(tx);

tokio::task::spawn_blocking(move || {
    while let Some(received) = rx.optimistic_blocking_recv() {
        let received = rx.optimistic_blocking_recv();
        some_blocking_op(received);
    }
})
.await
.unwrap();

依赖项

~4MB
~63K SLoC