[][src]Struct futures_core::task::Waker

#[repr(transparent)]
pub struct Waker { /* fields omitted */ }
🔬 This is a nightly-only experimental API. (futures_api)

futures in libcore are unstable

A Waker is a handle for waking up a task by notifying its executor that it is ready to be run.

This handle encapsulates a RawWaker instance, which defines the executor-specific wakeup behavior.

Implements Clone, Send, and Sync.

Methods

impl Waker[src]

pub fn wake(&self)[src]

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

futures in libcore are unstable

Wake up the task associated with this Waker.

pub fn will_wake(&self, other: &Waker) -> bool[src]

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

futures in libcore are unstable

Returns whether or not this Waker and other Waker have awaken the same task.

This function works on a best-effort basis, and may return false even when the Wakers would awaken the same task. However, if this function returns true, it is guaranteed that the Wakers will awaken the same task.

This function is primarily used for optimization purposes.

pub unsafe fn new_unchecked(waker: RawWaker) -> Waker[src]

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

futures in libcore are unstable

Creates a new Waker from RawWaker.

The behavior of the returned Waker is undefined if the contract defined in RawWaker's and RawWakerVTable's documentation is not upheld. Therefore this method is unsafe.

Trait Implementations

impl Debug for Waker[src]

impl Clone for Waker[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Drop for Waker[src]

impl Unpin for Waker[src]

impl Sync for Waker[src]

impl Send for Waker[src]

Blanket Implementations

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

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

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

type Error = !

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

The type returned in the event of a conversion error.

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

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

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

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

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

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

The type returned in the event of a conversion error.