futures_util::task

Trait LocalSpawn

Source
pub trait LocalSpawn {
    // Required method
    fn spawn_local_obj(
        &self,
        future: LocalFutureObj<'static, ()>,
    ) -> Result<(), SpawnError>;

    // Provided method
    fn status_local(&self) -> Result<(), SpawnError> { ... }
}
Expand description

The LocalSpawn is similar to Spawn, but allows spawning futures that don’t implement Send.

Required Methods§

Source

fn spawn_local_obj( &self, future: LocalFutureObj<'static, ()>, ) -> Result<(), SpawnError>

Spawns a future that will be run to completion.

§Errors

The executor may be unable to spawn tasks. Spawn errors should represent relatively rare scenarios, such as the executor having been shut down so that it is no longer able to accept tasks.

Provided Methods§

Source

fn status_local(&self) -> Result<(), SpawnError>

Determines whether the executor is able to spawn new tasks.

This method will return Ok when the executor is likely (but not guaranteed) to accept a subsequent spawn attempt. Likewise, an Err return means that spawn is likely, but not guaranteed, to yield an error.

Implementations on Foreign Types§

Source§

impl<Sp> LocalSpawn for &Sp
where Sp: LocalSpawn + ?Sized,

Source§

fn spawn_local_obj( &self, future: LocalFutureObj<'static, ()>, ) -> Result<(), SpawnError>

Source§

fn status_local(&self) -> Result<(), SpawnError>

Source§

impl<Sp> LocalSpawn for &mut Sp
where Sp: LocalSpawn + ?Sized,

Source§

fn spawn_local_obj( &self, future: LocalFutureObj<'static, ()>, ) -> Result<(), SpawnError>

Source§

fn status_local(&self) -> Result<(), SpawnError>

Source§

impl<Sp> LocalSpawn for Arc<Sp>
where Sp: LocalSpawn + ?Sized,

Source§

fn spawn_local_obj( &self, future: LocalFutureObj<'static, ()>, ) -> Result<(), SpawnError>

Source§

fn status_local(&self) -> Result<(), SpawnError>

Source§

impl<Sp> LocalSpawn for Box<Sp>
where Sp: LocalSpawn + ?Sized,

Source§

fn spawn_local_obj( &self, future: LocalFutureObj<'static, ()>, ) -> Result<(), SpawnError>

Source§

fn status_local(&self) -> Result<(), SpawnError>

Source§

impl<Sp> LocalSpawn for Rc<Sp>
where Sp: LocalSpawn + ?Sized,

Source§

fn spawn_local_obj( &self, future: LocalFutureObj<'static, ()>, ) -> Result<(), SpawnError>

Source§

fn status_local(&self) -> Result<(), SpawnError>

Implementors§