#[repr(transparent)]
pub struct Waker { /* fields omitted */ }
Expand description
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
.
Wake up the task associated with this Waker
.
Wake up the task associated with this Waker
without consuming the Waker
.
This is similar to wake
, but may be slightly less efficient in the case
where an owned Waker
is available. This method should be preferred to
calling waker.clone().wake()
.
Returns true
if this Waker
and another Waker
have awoken the same task.
This function works on a best-effort basis, and may return false even
when the Waker
s would awaken the same task. However, if this function
returns true
, it is guaranteed that the Waker
s will awaken the same task.
This function is primarily used for optimization purposes.
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.
Performs copy-assignment from source
. Read more
Formats the value using the given formatter. Read more
Executes the destructor for this type. Read more
Use a Wake
-able type as a Waker
.
No heap allocations or atomic operations are used for this conversion.
impl<T> Any for T where
T: 'static + ?Sized,
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
impl<T, U> Into<U> for T where
U: From<T>,
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
🔬 This is a nightly-only experimental API. (
toowned_clone_into
#41263)
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
The type returned in the event of a conversion error.