[−][src]Struct std::task::Waker
🔬 This is a nightly-only experimental API. (futures_api #50547)
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 contains a trait object pointing to an instance of the UnsafeWake
trait, allowing notifications to get routed through it.
Methods
impl Waker[src]
impl Wakerpub unsafe fn new(inner: NonNull<UnsafeWake + 'static>) -> Waker[src]
pub unsafe fn new(inner: NonNull<UnsafeWake + 'static>) -> Waker🔬 This is a nightly-only experimental API. (futures_api #50547)
futures in libcore are unstable
Constructs a new Waker directly.
Note that most code will not need to call this. Implementers of the
UnsafeWake trait will typically provide a wrapper that calls this
but you otherwise shouldn't call it directly.
If you're working with the standard library then it's recommended to
use the Waker::from function instead which works with the safe
Arc type and the safe Wake trait.
pub fn wake(&self)[src]
pub fn wake(&self)🔬 This is a nightly-only experimental API. (futures_api #50547)
futures in libcore are unstable
Wake up the task associated with this Waker.
pub fn will_wake(&self, other: &Waker) -> bool[src]
pub fn will_wake(&self, other: &Waker) -> bool🔬 This is a nightly-only experimental API. (futures_api #50547)
futures in libcore are unstable
Returns whether or not this Waker and other 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.
Trait Implementations
impl Sync for Waker[src]
impl Sync for Wakerimpl Send for Waker[src]
impl Send for Wakerimpl Debug for Waker[src]
impl Debug for Wakerfn fmt(&self, f: &mut Formatter) -> Result<(), Error>[src]
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>Formats the value using the given formatter. Read more
impl Clone for Waker[src]
impl Clone for Wakerfn clone(&self) -> Waker[src]
fn clone(&self) -> WakerReturns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)Performs copy-assignment from source. Read more
impl From<LocalWaker> for Waker[src]
impl From<LocalWaker> for Wakerfn from(local_waker: LocalWaker) -> Waker[src]
fn from(local_waker: LocalWaker) -> WakerPerforms the conversion.
impl Drop for Waker[src]
impl Drop for Wakerimpl Unpin for Waker[src]
impl Unpin for Wakerimpl<T> From<Arc<T>> for Waker where
T: Wake + 'static, [src]
impl<T> From<Arc<T>> for Waker where
T: Wake + 'static, Blanket Implementations
impl<T, U> TryFrom for T where
T: From<U>, [src]
impl<T, U> TryFrom for T where
T: From<U>, type Error = !
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>Performs the conversion.
impl<T> From for T[src]
impl<T> From for Timpl<T, U> TryInto for T where
U: TryFrom<T>, [src]
impl<T, U> TryInto for T where
U: TryFrom<T>, type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>Performs the conversion.
impl<T, U> Into for T where
U: From<T>, [src]
impl<T, U> Into for T where
U: From<T>, impl<T> Borrow for T where
T: ?Sized, [src]
impl<T> Borrow for T where
T: ?Sized, ⓘImportant traits for &'a mut Ifn borrow(&self) -> &T[src]
fn borrow(&self) -> &TImmutably borrows from an owned value. Read more
impl<T> BorrowMut for T where
T: ?Sized, [src]
impl<T> BorrowMut for T where
T: ?Sized, ⓘImportant traits for &'a mut Ifn borrow_mut(&mut self) -> &mut T[src]
fn borrow_mut(&mut self) -> &mut TMutably borrows from an owned value. Read more
impl<T> Any for T where
T: 'static + ?Sized, [src]
impl<T> Any for T where
T: 'static + ?Sized, fn get_type_id(&self) -> TypeId[src]
fn get_type_id(&self) -> TypeId🔬 This is a nightly-only experimental API. (get_type_id #27745)
this method will likely be replaced by an associated static
Gets the TypeId of self. Read more
impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, type Owned = T
fn to_owned(&self) -> T[src]
fn to_owned(&self) -> TCreates owned data from borrowed data, usually by cloning. Read more
fn clone_into(&self, target: &mut T)[src]
fn clone_into(&self, target: &mut T)🔬 This is a nightly-only experimental API. (toowned_clone_into #41263)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more