Struct tokio::executor::current_thread::CurrentThread
[−]
[src]
pub struct CurrentThread<P: Park = ParkThread> { /* fields omitted */ }
Executes tasks on the current thread
Methods
impl CurrentThread<ParkThread>
[src]
impl<P: Park> CurrentThread<P>
[src]
pub fn new_with_park(park: P) -> Self
[src]
Create a new instance of CurrentThread
backed by the given park
handle.
pub fn is_idle(&self) -> bool
[src]
Returns true
if the executor is currently idle.
An idle executor is defined by not currently having any spawned tasks.
ⓘImportant traits for &'a mut Rpub fn spawn<F>(&mut self, future: F) -> &mut Self where
F: Future<Item = (), Error = ()> + 'static,
[src]
F: Future<Item = (), Error = ()> + 'static,
Spawn the future on the executor.
This internally queues the future to be executed once run
is called.
pub fn block_on<F>(
&mut self,
future: F
) -> Result<F::Item, BlockError<F::Error>> where
F: Future,
[src]
&mut self,
future: F
) -> Result<F::Item, BlockError<F::Error>> where
F: Future,
Synchronously waits for the provided future
to complete.
This function can be used to synchronously block the current thread
until the provided future
has resolved either successfully or with an
error. The result of the future is then returned from this function
call.
Note that this function will also execute any spawned futures on the current thread, but will not block until these other spawned futures have completed.
The caller is responsible for ensuring that other spawned futures complete execution.
pub fn run(&mut self) -> Result<(), RunError>
[src]
Run the executor to completion, blocking the thread until all spawned futures have completed.
pub fn run_timeout(&mut self, duration: Duration) -> Result<(), RunTimeoutError>
[src]
Run the executor to completion, blocking the thread until all
spawned futures have completed or duration
time has elapsed.
pub fn turn(&mut self, duration: Option<Duration>) -> Result<Turn, TurnError>
[src]
Perform a single iteration of the event loop.
This function blocks the current thread even if the executor is idle.
pub fn enter<'a>(&'a mut self, enter: &'a mut Enter) -> Entered<'a, P>
[src]
Bind CurrentThread
instance with an execution context.
ⓘImportant traits for &'a mut Rpub fn get_park(&self) -> &P
[src]
Returns a reference to the underlying Park
instance.
ⓘImportant traits for &'a mut Rpub fn get_park_mut(&mut self) -> &mut P
[src]
Returns a mutable reference to the underlying Park
instance.
pub fn handle(&self) -> Handle
[src]
Get a new handle to spawn futures on the executor
Different to the executor itself, the handle can be sent to different threads and can be used to spawn futures on the executor.
Trait Implementations
impl Executor for CurrentThread
[src]
fn spawn(
&mut self,
future: Box<Future<Item = (), Error = ()> + Send>
) -> Result<(), SpawnError>
[src]
&mut self,
future: Box<Future<Item = (), Error = ()> + Send>
) -> Result<(), SpawnError>
Spawns a future object to run on this executor. Read more
fn status(&self) -> Result<(), SpawnError>
[src]
Provides a best effort hint to whether or not spawn
will succeed. Read more