pub struct AbandonmentTracker { /* private fields */ }Expand description
Tracker for task failures that decides when to abandon failing tasks.
Tasks that repeatedly fail are abandoned rather than retried indefinitely. This prevents the colony from wasting effort on unrecoverable work.
Implementations§
Source§impl AbandonmentTracker
impl AbandonmentTracker
Sourcepub fn new(trial_limit: u32) -> Self
pub fn new(trial_limit: u32) -> Self
Create a new abandonment tracker with the given trial limit.
Sourcepub fn record_failure(&self, task_id: &TaskId) -> AbandonmentDecision
pub fn record_failure(&self, task_id: &TaskId) -> AbandonmentDecision
Sourcepub fn record_success(&self, task_id: &TaskId)
pub fn record_success(&self, task_id: &TaskId)
Record a task success and clear its failure count.
Trait Implementations§
Source§impl Debug for AbandonmentTracker
impl Debug for AbandonmentTracker
Auto Trait Implementations§
impl Freeze for AbandonmentTracker
impl RefUnwindSafe for AbandonmentTracker
impl Send for AbandonmentTracker
impl Sync for AbandonmentTracker
impl Unpin for AbandonmentTracker
impl UnsafeUnpin for AbandonmentTracker
impl UnwindSafe for AbandonmentTracker
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more