rust/src/test/run-pass/task-comm-10.rs

28 lines
455 B
Rust
Raw Normal View History

#[legacy_modes];
extern mod std;
2012-08-28 18:11:15 +00:00
fn start(c: pipes::Chan<pipes::Chan<~str>>) {
2012-07-25 21:05:06 +00:00
let (ch, p) = pipes::stream();
c.send(ch);
let mut a;
let mut b;
2012-07-25 21:05:06 +00:00
a = p.recv();
assert a == ~"A";
log(error, a);
2012-07-25 21:05:06 +00:00
b = p.recv();
assert b == ~"B";
log(error, b);
2010-08-11 22:05:33 +00:00
}
2011-04-19 20:35:49 +00:00
fn main() {
2012-07-25 21:05:06 +00:00
let (ch, p) = pipes::stream();
2012-06-30 23:19:07 +00:00
let child = task::spawn(|| start(ch) );
2012-07-25 21:05:06 +00:00
let c = p.recv();
c.send(~"A");
c.send(~"B");
task::yield();
}