pub struct OwnedTaskHandle(/* private fields */);Expand description
An owning handle that cancels its task when the last clone is dropped.
Use TaskHandle::owned to create one. Clones share ownership of the same
task, so dropping one only cancels the task when no other clones remain.
Implementations§
Source§impl OwnedTaskHandle
impl OwnedTaskHandle
Sourcepub fn cancel(&self)
pub fn cancel(&self)
Cancel the owned task immediately.
This method has the same context requirement as TaskHandle::cancel.
Sourcepub fn try_cancel(&self)
pub fn try_cancel(&self)
Try to cancel the owned task if Freya’s current context is available.
Use this instead of OwnedTaskHandle::cancel from cleanup code that
may run after Freya’s context has been removed.
Sourcepub fn downgrade(&self) -> TaskHandle
pub fn downgrade(&self) -> TaskHandle
Get a non-owning TaskHandle for the same task.
The returned handle can cancel the task, but dropping it has no effect
on the OwnedTaskHandle’s ownership.
Trait Implementations§
Source§impl Clone for OwnedTaskHandle
impl Clone for OwnedTaskHandle
Source§fn clone(&self) -> OwnedTaskHandle
fn clone(&self) -> OwnedTaskHandle
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !Send for OwnedTaskHandle
impl !Sync for OwnedTaskHandle
impl Freeze for OwnedTaskHandle
impl RefUnwindSafe for OwnedTaskHandle
impl Unpin for OwnedTaskHandle
impl UnsafeUnpin for OwnedTaskHandle
impl UnwindSafe for OwnedTaskHandle
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ComponentProps for T
impl<T> ComponentProps for T
fn changed(&self, other: &(dyn ComponentProps + 'static)) -> bool
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more