/src/test/run-pass/task-comm-10.rs
http://github.com/jruderman/rust · Rust · 27 lines · 23 code · 4 blank · 0 comment · 2 complexity · 60bd42463a5d21a726afc37443edd86c MD5 · raw file
- use std;
- import task;
- import pipes;
- fn start(c: pipes::chan<pipes::chan<~str>>) {
- let (ch, p) = pipes::stream();
- c.send(ch);
- let mut a;
- let mut b;
- a = p.recv();
- assert a == ~"A";
- log(error, a);
- b = p.recv();
- assert b == ~"B";
- log(error, b);
- }
- fn main() {
- let (ch, p) = pipes::stream();
- let child = task::spawn(|| start(ch) );
- let c = p.recv();
- c.send(~"A");
- c.send(~"B");
- task::yield();
- }