pub enum CycleOutcome {
Continue,
Suspend,
Shutdown(ShutdownCause),
}Expand description
The result of one executor processing cycle.
The owner uses this value to decide when to run another cycle.
Variants§
Continue
The executor has more work that it can do now.
Suspend
The executor cannot make more progress now.
Wait for a reason to run another cycle. A reason can be:
- The owner has enqueued new tasks.
- An I/O operation has completed.
- A component sends a wake signal through the
owner_wakerfromExecutorBuilder::owner_waker().
The owner can also run periodic cycles as a fallback for missed wake signals.
Shutdown(ShutdownCause)
The executor has completed graceful shutdown and owns no tasks.
Later cycles do no work and return Shutdown with the first shutdown
cause.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for CycleOutcome
impl RefUnwindSafe for CycleOutcome
impl Send for CycleOutcome
impl Sync for CycleOutcome
impl Unpin for CycleOutcome
impl UnsafeUnpin for CycleOutcome
impl UnwindSafe for CycleOutcome
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