Struct backoff::exponential::ExponentialBackoffBuilder
source · pub struct ExponentialBackoffBuilder<C> { /* private fields */ }
Expand description
Builder for ExponentialBackoff
.
TODO: Example
Implementations§
source§impl<C> ExponentialBackoffBuilder<C>where
C: Clock + Default,
impl<C> ExponentialBackoffBuilder<C>where
C: Clock + Default,
pub fn new() -> Self
sourcepub fn with_initial_interval(&mut self, initial_interval: Duration) -> &mut Self
pub fn with_initial_interval(&mut self, initial_interval: Duration) -> &mut Self
The initial retry interval.
sourcepub fn with_randomization_factor(
&mut self,
randomization_factor: f64
) -> &mut Self
pub fn with_randomization_factor(
&mut self,
randomization_factor: f64
) -> &mut Self
The randomization factor to use for creating a range around the retry interval.
A randomization factor of 0.5 results in a random period ranging between 50% below and 50% above the retry interval.
sourcepub fn with_multiplier(&mut self, multiplier: f64) -> &mut Self
pub fn with_multiplier(&mut self, multiplier: f64) -> &mut Self
The value to multiply the current interval with for each retry attempt.
sourcepub fn with_max_interval(&mut self, max_interval: Duration) -> &mut Self
pub fn with_max_interval(&mut self, max_interval: Duration) -> &mut Self
The maximum value of the back off period. Once the retry interval reaches this value it stops increasing.
sourcepub fn with_max_elapsed_time(
&mut self,
max_elapsed_time: Option<Duration>
) -> &mut Self
pub fn with_max_elapsed_time(
&mut self,
max_elapsed_time: Option<Duration>
) -> &mut Self
The maximum elapsed time after instantiating ExponentialBackfff
or calling
reset
after which next_backoff
returns None
.