Struct tokio::runtime::current_thread::Runtime [] [src]

pub struct Runtime { /* fields omitted */ }

Single-threaded runtime provides a way to start reactor and executor on the current thread.

See module level documentation for more details.

Methods

impl Runtime
[src]

[src]

Returns a new runtime initialized with default configuration values.

[src]

Get a new handle to spawn futures on the single-threaded Tokio runtime

Different to the runtime itself, the handle can be sent to different threads.

Important traits for &'a mut R
[src]

Spawn a future onto the single-threaded Tokio runtime.

See module level documentation for more details.

Examples

use tokio::runtime::current_thread::Runtime;

// Create the runtime
let mut rt = Runtime::new().unwrap();

// Spawn a future onto the runtime
rt.spawn(future::lazy(|| {
    println!("running on the runtime");
    Ok(())
}));

Panics

This function panics if the spawn fails. Failure occurs if the executor is currently at capacity and is unable to spawn a new future.

[src]

Runs the provided future, blocking the current thread until the future completes.

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. Once the function returns, any uncompleted futures remain pending in the Runtime instance. These futures will not run until block_on or run is called again.

The caller is responsible for ensuring that other spawned futures complete execution by calling block_on or run.

[src]

Run the executor to completion, blocking the thread until all spawned futures have completed.

Trait Implementations

impl Debug for Runtime
[src]

[src]

Formats the value using the given formatter. Read more