diff options
Diffstat (limited to 'tokio/src/sync/tests/loom_notify.rs')
-rw-r--r-- | tokio/src/sync/tests/loom_notify.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tokio/src/sync/tests/loom_notify.rs b/tokio/src/sync/tests/loom_notify.rs index 79a5bf89..4be949a3 100644 --- a/tokio/src/sync/tests/loom_notify.rs +++ b/tokio/src/sync/tests/loom_notify.rs @@ -22,6 +22,27 @@ fn notify_one() { } #[test] +fn notify_waiters() { + loom::model(|| { + let notify = Arc::new(Notify::new()); + let tx = notify.clone(); + let notified1 = notify.notified(); + let notified2 = notify.notified(); + + let th = thread::spawn(move || { + tx.notify_waiters(); + }); + + th.join().unwrap(); + + block_on(async { + notified1.await; + notified2.await; + }); + }); +} + +#[test] fn notify_multi() { loom::model(|| { let notify = Arc::new(Notify::new()); |