Function tokio::runtime::run [] [src]

pub fn run<F>(future: F) where
    F: Future<Item = (), Error = ()> + Send + 'static, 

Start the Tokio runtime using the supplied future to bootstrap execution.

This function is used to bootstrap the execution of a Tokio application. It does the following:

Note that the function will not return immediately once future has completed. Instead it waits for the entire runtime to become idle.

See the module level documentation for more details.

Examples

use tokio::net::TcpListener;

let listener = TcpListener::bind(&addr).unwrap();

let server = listener.incoming()
    .map_err(|e| println!("error = {:?}", e))
    .for_each(|socket| {
        tokio::spawn(process(socket))
    });

tokio::run(server);

Panics

This function panics if called from the context of an executor.