Struct wasm_timer::Delay[][src]

pub struct Delay { /* fields omitted */ }

A future representing the notification that an elapsed duration has occurred.

This is created through the Delay::new or Delay::new_at methods indicating when the future should fire at. Note that these futures are not intended for high resolution timers, but rather they will likely fire some granularity after the exact instant that they’re otherwise indicated to fire at.

Implementations

impl Delay[src]

pub fn new(dur: Duration) -> Delay

Notable traits for Delay

impl Future for Delay type Output = Result<()>;
[src]

Creates a new future which will fire at dur time into the future.

The returned object will be bound to the default timer for this thread. The default timer will be spun up in a helper thread on first use.

pub fn new_at(at: Instant) -> Delay

Notable traits for Delay

impl Future for Delay type Output = Result<()>;
[src]

Creates a new future which will fire at the time specified by at.

The returned object will be bound to the default timer for this thread. The default timer will be spun up in a helper thread on first use.

pub fn new_handle(at: Instant, handle: TimerHandle) -> Delay

Notable traits for Delay

impl Future for Delay type Output = Result<()>;
[src]

Creates a new future which will fire at the time specified by at.

The returned instance of Delay will be bound to the timer specified by the handle argument.

pub fn reset(&mut self, dur: Duration)[src]

Resets this timeout to an new timeout which will fire at the time specified by dur.

This is equivalent to calling reset_at with Instant::now() + dur

pub fn reset_at(&mut self, at: Instant)[src]

Resets this timeout to an new timeout which will fire at the time specified by at.

This method is usable even of this instance of Delay has “already fired”. That is, if this future has resovled, calling this method means that the future will still re-resolve at the specified instant.

If at is in the past then this future will immediately be resolved (when poll is called).

Note that if any task is currently blocked on this future then that task will be dropped. It is required to call poll again after this method has been called to ensure tha ta task is blocked on this future.

Trait Implementations

impl Debug for Delay[src]

impl Drop for Delay[src]

impl Future for Delay[src]

type Output = Result<()>

The type of value produced on completion.

Auto Trait Implementations

impl !RefUnwindSafe for Delay

impl Send for Delay

impl Sync for Delay

impl Unpin for Delay

impl !UnwindSafe for Delay

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> FutureExt for T where
    T: Future + ?Sized
[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<F> IntoFuture for F where
    F: Future
[src]

type Output = <F as Future>::Output

🔬 This is a nightly-only experimental API. (into_future)

The output that the future will produce on completion.

type Future = F

🔬 This is a nightly-only experimental API. (into_future)

Which kind of future are we turning this into?

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<F, T, E> TryFuture for F where
    F: Future<Output = Result<T, E>> + ?Sized
[src]

type Ok = T

The type of successful values yielded by this future

type Error = E

The type of failures yielded by this future

impl<Fut> TryFutureExt for Fut where
    Fut: TryFuture + ?Sized
[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.