1个不稳定版本
0.1.0 | 2023年6月22日 |
---|
#15 in #zmq
16KB
246 代码行
bitcoincore-zmqsequence
一个ZeroMQ pubsequence监听器。允许保持比特币核心节点内存池的同步副本。示例
use anyhow::Result;
use bitcoincore_zmqsequence::ZmqSeqListener;
use ctrlc;
use std::str::FromStr;
use std::sync::atomic::{AtomicBool, Ordering};
use std::sync::Arc;
use url::Url;
fn main() -> Result<()> {
let checker = NodeChecker::new(&ClientConfig {
cookie_auth_path: None,
ip_addr: "localhost".to_string(),
user: "anon".to_string(),
passwd: "anon".to_string(),
})?;
println!("Waiting to node Ok");
checker.wait_till_node_ok(2, false, Duration::from_secs(5))?;
println!("Node Ok");
let stop_th = Arc::new(AtomicBool::new(false));
let stop_th2 = stop_th.clone();
ctrlc::set_handler(move || stop_th2.store(true, Ordering::SeqCst))?;
let zmqseqlistener = ZmqSeqListener::start(&Url::from_str("tcp://127.0.0.1:29000")?)?;
while !stop_th.load(Ordering::SeqCst) {
let kk = zmqseqlistener.rx.recv()?;
println!("{:?}", kk);
}
Ok(())
}
依赖项
~1.7–5.5MB
~118K SLoC