use std::{thread, time::Duration}; use brk_error::Result; use brk_monitor::Mempool; use brk_rpc::{Auth, Client}; fn main() -> Result<()> { // Connect to Bitcoin Core let bitcoin_dir = Client::default_bitcoin_path(); // let bitcoin_dir = Path::new("/Volumes/WD_BLACK/bitcoin"); let client = Client::new( Client::default_url(), Auth::CookieFile(bitcoin_dir.join(".cookie")), )?; let mempool = Mempool::new(client); let mempool_clone = mempool.clone(); thread::spawn(move || { mempool_clone.start(); }); // Access from main thread loop { thread::sleep(Duration::from_secs(5)); let txs = mempool.get_txs(); println!("mempool_tx_count: {}", txs.len()); let addresses = mempool.get_addresses(); println!("mempool_address_count: {}", addresses.len()); } // Ok(()) }