pub struct Periodic {
pub period: Duration,
}Expand description
Classic jitter-free periodic arrival process as introduced by Liu & Layland.
Fields§
§period: DurationThe exact separation between two job releases.
Implementations§
Trait Implementations§
Source§impl ArrivalBound for Periodic
impl ArrivalBound for Periodic
Source§fn number_arrivals(&self, delta: Duration) -> usize
fn number_arrivals(&self, delta: Duration) -> usize
Bound the number of jobs released in any interval of length
delta.Source§fn steps_iter<'a>(&'a self) -> Box<dyn Iterator<Item = Duration> + 'a>
fn steps_iter<'a>(&'a self) -> Box<dyn Iterator<Item = Duration> + 'a>
Yield the sequence of interval lengths (i.e., values of
delta in
ArrivalBound::number_arrivals) for which the arrival bound
“steps”, i.e., where it shows an increase in the number of
released jobs. Read moreSource§fn clone_with_jitter(&self, jitter: Duration) -> Box<dyn ArrivalBound>
fn clone_with_jitter(&self, jitter: Duration) -> Box<dyn ArrivalBound>
Clone the arrival model while accounting for added release
jitter. Returns a boxed
dyn object because the underlying
type may change.Source§fn brute_force_steps_iter<'a>(
&'a self,
) -> Box<dyn Iterator<Item = Duration> + 'a>
fn brute_force_steps_iter<'a>( &'a self, ) -> Box<dyn Iterator<Item = Duration> + 'a>
Same semantics as ArrivalBound::steps_iter, but provided by
a default implementation in the most naive way possible.
Avoid if performance is at all important.
impl Copy for Periodic
Auto Trait Implementations§
impl Freeze for Periodic
impl RefUnwindSafe for Periodic
impl Send for Periodic
impl Sync for Periodic
impl Unpin for Periodic
impl UnwindSafe for Periodic
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> 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