pub struct Barriers { /* private fields */ }Expand description
The barriers a running factory is holding.
Implementations§
Source§impl Barriers
impl Barriers
Sourcepub fn deliver(&self, graph: &RouteGraph, flight: Flight) -> Option<Delivery>
pub fn deliver(&self, graph: &RouteGraph, flight: Flight) -> Option<Delivery>
Offers a flight to whichever barrier guards its destination.
Returns None when the destination declares no join, which is the common case and means
the flight should simply be run.
§Panics
Never; the lock is not held across a call out.
Sourcepub fn abandon_unreachable(
&self,
graph: &RouteGraph,
live_agents: &BTreeSet<AgentName>,
) -> Vec<Abandoned>
pub fn abandon_unreachable( &self, graph: &RouteGraph, live_agents: &BTreeSet<AgentName>, ) -> Vec<Abandoned>
Gives up every barrier that no live run could still satisfy.
live_agents is who is currently running or queued to run. A barrier is dead when none of
its missing upstreams can be reached from any of them — at which point waiting is not
patience, it is a hang.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for Barriers
impl RefUnwindSafe for Barriers
impl Send for Barriers
impl Sync for Barriers
impl Unpin for Barriers
impl UnsafeUnpin for Barriers
impl UnwindSafe for Barriers
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more