Sha256: 558ad9bab3f18b79a0d46548aff24288f1c6c5d0581e51559cc2a82cccd0696c
Contents?: true
Size: 831 Bytes
Versions: 7
Compression:
Stored size: 831 Bytes
Contents
use crate::sync::watch; use loom::future::block_on; use loom::thread; #[test] fn smoke() { loom::model(|| { let (tx, mut rx1) = watch::channel(1); let mut rx2 = rx1.clone(); let mut rx3 = rx1.clone(); let mut rx4 = rx1.clone(); let mut rx5 = rx1.clone(); let th = thread::spawn(move || { tx.send(2).unwrap(); }); block_on(rx1.changed()).unwrap(); assert_eq!(*rx1.borrow(), 2); block_on(rx2.changed()).unwrap(); assert_eq!(*rx2.borrow(), 2); block_on(rx3.changed()).unwrap(); assert_eq!(*rx3.borrow(), 2); block_on(rx4.changed()).unwrap(); assert_eq!(*rx4.borrow(), 2); block_on(rx5.changed()).unwrap(); assert_eq!(*rx5.borrow(), 2); th.join().unwrap(); }) }
Version data entries
7 entries across 7 versions & 1 rubygems