Don't run until all the way until parked when waiting for a model's next event

This commit is contained in:
Max Brunsfeld 2023-11-16 14:09:33 -08:00
parent 6397c05835
commit f9650b3111

View file

@ -354,10 +354,18 @@ impl<T: Send> Model<T> {
}) })
}); });
cx.executor().run_until_parked(); loop {
rx.try_next() match rx.try_next() {
.expect("no event received") Ok(Some(event)) => return event,
.expect("model was dropped") Ok(None) => panic!("model was dropped"),
Err(_) => {
if !cx.executor().run_step() {
break;
}
}
}
}
panic!("no event received")
} }
} }