Skip to main content

LocalSpawner

Struct LocalSpawner 

Source
pub struct LocalSpawner { /* private fields */ }
Expand description

A capability for submitting Send work to a particular LocalDomain.

Implementations§

Source§

impl LocalSpawner

Source

pub fn spawn<F, T>(&self, future: F) -> Result<Task<T>, SpawnError>
where F: Future<Output = T> + Send + 'static, T: Send + 'static,

Submits Send work for execution on the local domain’s owner thread.

§Errors

Returns SpawnError::Closed if the domain no longer exists or has begun shutting down.

§Panics

Panics if the internal lifecycle mutex was poisoned by an earlier panic.

Source

pub fn dispatch<F>(&self, callback: F) -> Result<(), SpawnError>
where F: FnOnce() + Send + 'static,

Dispatches a callback for fire-and-forget execution on the owner thread.

This avoids allocating a result-bearing Task. Panics are isolated so they do not unwind through the owner drive loop; the process panic hook still runs normally.

§Errors

Returns SpawnError::Closed if the domain no longer exists or has begun shutting down.

§Panics

Panics if the internal lifecycle mutex was poisoned by an earlier panic.

Source

pub fn dispatch_future<F>(&self, future: F) -> Result<(), SpawnError>
where F: Future<Output = ()> + Send + 'static,

Dispatches a future for fire-and-forget execution on the owner thread.

This avoids the result and cancellation bridge used by Self::spawn. Panics are isolated so they do not unwind through the owner drive loop; the process panic hook still runs normally.

§Errors

Returns SpawnError::Closed if the domain no longer exists or has begun shutting down.

§Panics

Panics if the internal lifecycle mutex was poisoned by an earlier panic.

Trait Implementations§

Source§

impl Clone for LocalSpawner

Source§

fn clone(&self) -> LocalSpawner

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

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

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.