美文网首页RUST编程
Rust 编程视频教程(进阶)——017_3 消息传递 3

Rust 编程视频教程(进阶)——017_3 消息传递 3

作者: 令狐壹冲 | 来源:发表于2020-02-16 10:56 被阅读0次

    视频地址

    头条地址:https://www.ixigua.com/i6775861706447913485
    B站地址:https://www.bilibili.com/video/av81202308/

    源码地址

    github地址:https://github.com/anonymousGiga/learn_rust

    讲解内容

    多个生产者例子:

    use std::thread;
    use std::sync::mpsc;
    use std::time::Duration;
    
    fn main() {
        let (tx, rx) = mpsc::channel();
        let tx1 = mpsc::Sender::clone(&tx);//通过clone来使用
        thread::spawn(move || {   //第一个发送者线程
            let vals = vec![
                 String::from("hi"),
                 String::from("from"),
                 String::from("the"),
                 String::from("thread"),
             ];
    
            for val in vals {
                  tx1.send(val).unwrap();
                  thread::sleep(Duration::from_secs(1));
             }
        });
    
        thread::spawn(move || { //第二个发送者线程
            let vals = vec![
                String::from("hi"),
                String::from("from"),
                String::from("the"),
                String::from("thread"),
            ];
    
            for val in vals {
                tx.send(val).unwrap();
                thread::sleep(Duration::from_secs(1));
            }
        });
    
        for received in rx {
            println!("Got: {}", received);
        }
    }
    

    相关文章

      网友评论

        本文标题:Rust 编程视频教程(进阶)——017_3 消息传递 3

        本文链接:https://www.haomeiwen.com/subject/ddlpfhtx.html