#![crate_name = "msreader"]
use std::thread;
use std::time::Duration;
fn main() {
let context = zmq::Context::new();
let receiver = context.socket(zmq::PULL).unwrap();
assert!(receiver.connect("tcp://localhost:5557").is_ok());
let subscriber = context.socket(zmq::SUB).unwrap();
assert!(subscriber.connect("tcp://localhost:5556").is_ok());
let filter = b"10001";
assert!(subscriber.set_subscribe(filter).is_ok());
let mut msg = zmq::Message::new();
loop {
loop {
if receiver.recv(&mut msg, zmq::DONTWAIT).is_err() {
break;
}
}
loop {
if subscriber.recv(&mut msg, zmq::DONTWAIT).is_err() {
break;
}
}
thread::sleep(Duration::from_millis(1))
}
}