1use std::time::{Instant, Duration};
2
3use timely::Config;
4use timely::synchronization::Sequencer;
5
6fn main() {
7 timely::execute(Config::process(4), |worker| {
8
9 let timer = Instant::now();
10 let mut sequencer = Sequencer::new(worker, Instant::now());
11
12 for round in 0 .. {
13 std::thread::sleep(Duration::from_secs(1 + worker.index() as u64));
15 sequencer.push(format!("worker {:?}, round {:?}", worker.index(), round));
16 for element in &mut sequencer {
18 println!("{:?}:\tWorker {:?}:\t recv'd: {:?}", timer.elapsed(), worker.index(), element);
19 }
20 worker.step();
21 }
22
23 }).unwrap(); }