pub struct TaskExecutorConfig {
pub max_concurrent: usize,
pub default_timeout_secs: u64,
pub retry_delay_secs: u64,
pub retry_backoff_factor: f64,
pub retry_max_delay_secs: u64,
pub retry_jitter: bool,
pub enable_hooks: bool,
pub checkpoint_interval_secs: u64,
}Available on crate feature
tasks only.Expand description
Configuration for task executor
Fields§
§max_concurrent: usizeMaximum concurrent task executions
default_timeout_secs: u64Default timeout in seconds (0 = no timeout)
retry_delay_secs: u64Base retry delay in seconds (used as initial delay for exponential backoff)
retry_backoff_factor: f64Backoff multiplier for retry delay (e.g. 2.0 = delay doubles each attempt)
retry_max_delay_secs: u64Maximum retry delay cap in seconds (prevents unbounded growth)
retry_jitter: boolWhether to add jitter to retry delays (recommended for production)
enable_hooks: boolEnable task hooks
checkpoint_interval_secs: u64Checkpoint interval: seconds (0 = no checkpoint).
Implementations§
Source§impl TaskExecutorConfig
impl TaskExecutorConfig
Sourcepub fn retry_delay_for_attempt(&self, attempt: u32) -> Duration
pub fn retry_delay_for_attempt(&self, attempt: u32) -> Duration
Compute retry delay for the given attempt (1-based), applying exponential backoff + optional jitter.
Trait Implementations§
Source§impl Clone for TaskExecutorConfig
impl Clone for TaskExecutorConfig
Source§fn clone(&self) -> TaskExecutorConfig
fn clone(&self) -> TaskExecutorConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TaskExecutorConfig
impl Debug for TaskExecutorConfig
Source§impl Default for TaskExecutorConfig
impl Default for TaskExecutorConfig
Source§fn default() -> TaskExecutorConfig
fn default() -> TaskExecutorConfig
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for TaskExecutorConfig
impl RefUnwindSafe for TaskExecutorConfig
impl Send for TaskExecutorConfig
impl Sync for TaskExecutorConfig
impl Unpin for TaskExecutorConfig
impl UnsafeUnpin for TaskExecutorConfig
impl UnwindSafe for TaskExecutorConfig
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request