pub struct LongHoldMiddleware {
pub default_hold: Duration,
pub event_tx: Sender<Event>,
}Expand description
Base layer that emits Event::TaskAttemptCompleted with a
long_hold_warn marker when a spawn’s completion takes longer than
default_hold. Purely observational — it never alters the signal or
blocks completion.
Fields§
§default_hold: DurationThreshold above which a completion is flagged as long-held.
event_tx: Sender<Event>Broadcast sender the EventLog subscribes to.
Implementations§
Trait Implementations§
Source§impl SpawnerLayer for LongHoldMiddleware
impl SpawnerLayer for LongHoldMiddleware
Source§fn wrap(&self, inner: Arc<dyn SpawnerAdapter>) -> Arc<dyn SpawnerAdapter> ⓘ
fn wrap(&self, inner: Arc<dyn SpawnerAdapter>) -> Arc<dyn SpawnerAdapter> ⓘ
Wraps
inner in this layer’s behaviour, returning a new
SpawnerAdapter that delegates to inner (directly or via
wrap_join) while adding this layer’s cross-cutting effect.Auto Trait Implementations§
impl !RefUnwindSafe for LongHoldMiddleware
impl !UnwindSafe for LongHoldMiddleware
impl Freeze for LongHoldMiddleware
impl Send for LongHoldMiddleware
impl Sync for LongHoldMiddleware
impl Unpin for LongHoldMiddleware
impl UnsafeUnpin for LongHoldMiddleware
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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