gpt4 book ai didi

multithreading - 从 channel 读取或超时?

转载 作者:行者123 更新时间:2023-11-29 07:45:30 25 4
gpt4 key购买 nike

使用 Rust 1.9,我想从 mpsc::channel 超时读取。是否有明确的习惯用法来使这项工作有效?我见过 mpsc::Select 中描述的不稳定方法但是this Github discussion表明这不是一个稳健的方法。是否有更好的推荐方法来实现接收或超时语义?

最佳答案

引入了 Rust 1.12 Receiver::recv_timeout :

use std::sync::mpsc::channel;
use std::time::Duration;

fn main() {
let (.., rx) = channel::<bool>();
let timeout = Duration::new(3, 0);

println!("start recv");
let _ = rx.recv_timeout(timeout);
println!("done!");
}

关于multithreading - 从 channel 读取或超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37820454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com