Struct AbortHandle

struct AbortHandle { ... }

A handle to an Abortable task.

Implementations

impl AbortHandle

fn new_pair() -> (Self, AbortRegistration)

Creates an (AbortHandle, AbortRegistration) pair which can be used to abort a running future or stream.

This function is usually paired with a call to Abortable::new.

impl AbortHandle

fn abort(self: &Self)

Abort the Abortable stream/future associated with this handle.

Notifies the Abortable task associated with this handle that it should abort. Note that if the task is currently being polled on another thread, it will not immediately stop running. Instead, it will continue to run until its poll method returns.

fn is_aborted(self: &Self) -> bool

Checks whether AbortHandle::abort was called on any associated AbortHandles, which includes all the AbortHandles linked with the same AbortRegistration. This means that it will return true even if:

  • abort was called after the task had completed.
  • abort was called while the task was being polled - the task may still be running and will not be stopped until poll returns.

This operation has a Relaxed ordering.

impl Clone for AbortHandle

fn clone(self: &Self) -> AbortHandle

impl Debug for AbortHandle

fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result

impl Freeze for AbortHandle

impl RefUnwindSafe for AbortHandle

impl Send for AbortHandle

impl Sync for AbortHandle

impl Unpin for AbortHandle

impl UnsafeUnpin for AbortHandle

impl UnwindSafe for AbortHandle

impl<T> Any for AbortHandle

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for AbortHandle

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for AbortHandle

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> CloneToUninit for AbortHandle

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> From for AbortHandle

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for AbortHandle

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T, U> Into for AbortHandle

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for AbortHandle

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for AbortHandle

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>