broadcast and watch
let (tx, mut rx1) = tokio::sync::broadcast::channel::<String>(16);
let mut rx2 = tx.subscribe();
tx.send("event".to_string()).unwrap();
let (tx, rx) = tokio::sync::watch::channel("initial");
tx.send("updated").unwrap();
println!("{}", *rx.borrow());
watch is ideal for configuration updates, health status, or any "current state" notification.