pub enum TaskStatus {
Queued,
Running,
Completed,
Cancelled,
Failed,
}Expand description
Status of a task within the executor.
Task status transitions follow a strict state machine: Queued → Running → (Completed | Cancelled | Failed)
§State Transitions
- Queued: Initial state when task is spawned
- Running: Task is currently executing on a worker thread
- Completed: Task finished successfully
- Cancelled: Task was cancelled before or during execution
- Failed: Task encountered an error or panic
Variants§
Queued
Task is queued but not yet started
§Guarantees
- Task will eventually transition to Running
- Cancellation is possible in this state
- Memory has been allocated for task execution
Running
Task is currently running
§Guarantees
- Task is actively executing on a worker thread
- Cancellation is cooperative in this state
- Progress is being made toward completion
Completed
Task completed successfully
§Guarantees
- Task result is available via task handle
- No further state transitions possible
- Resources have been cleaned up
Cancelled
Task ended without a result
Reached when a cancel request is honored, or when the executor discards
the task before it finishes (for example at shutdown). The task’s handle
resolves to TaskError::Cancelled in both cases.
§Guarantees
- Task did not complete normally
- Cancellation was requested and honored, or the task was discarded
- Resources have been cleaned up
Failed
Task failed with an error
§Guarantees
- Task encountered an unrecoverable error
- Error information is available via task handle
- Resources have been cleaned up
Trait Implementations§
Source§impl Clone for TaskStatus
impl Clone for TaskStatus
impl Copy for TaskStatus
Source§impl Debug for TaskStatus
impl Debug for TaskStatus
Source§impl Display for TaskStatus
impl Display for TaskStatus
impl Eq for TaskStatus
Source§impl PartialEq for TaskStatus
impl PartialEq for TaskStatus
impl StructuralPartialEq for TaskStatus
Auto Trait Implementations§
impl Freeze for TaskStatus
impl RefUnwindSafe for TaskStatus
impl Send for TaskStatus
impl Sync for TaskStatus
impl Unpin for TaskStatus
impl UnsafeUnpin for TaskStatus
impl UnwindSafe for TaskStatus
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