Skip to main content

TimerFiring

Struct TimerFiring 

Source
pub struct TimerFiring<'ctx> { /* private fields */ }
Expand description

One firing of a ThreadpoolTimer, handed to its callback.

The timer is not armed while the callback runs, so re-arming from here is what produces repetition whose delay is measured from the end of this callback – repetition that can never overlap itself.

Implementations§

Source§

impl TimerFiring<'_>

Source

pub fn rearm_after(&self, delay: Duration)

Arm the timer again to fire once, delay from now.

The arming is applied after this callback returns, so delay is measured from the end of this firing regardless of where in the callback it is requested. That is what keeps successive firings strictly sequential: a callback that re-armed at its start and then ran longer than delay would otherwise be entered again while still running.

Calling this more than once in a firing keeps the last request.

Source

pub fn rearm_at(&self, when: SystemTime)

Arm the timer again to fire once at the wall-clock instant when.

Like TimerFiring::rearm_after, this is applied after the callback returns. An instant that has already passed by then fires immediately.

Trait Implementations§

Source§

impl Debug for TimerFiring<'_>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'ctx> !Freeze for TimerFiring<'ctx>

§

impl<'ctx> !RefUnwindSafe for TimerFiring<'ctx>

§

impl<'ctx> !Sync for TimerFiring<'ctx>

§

impl<'ctx> !UnwindSafe for TimerFiring<'ctx>

§

impl<'ctx> Send for TimerFiring<'ctx>

§

impl<'ctx> Unpin for TimerFiring<'ctx>

§

impl<'ctx> UnsafeUnpin for TimerFiring<'ctx>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.