logo
pub fn spawn_blocking<F, T>(f: F) -> JoinHandle<T>Notable traits for JoinHandle<T>impl<T> Future for JoinHandle<T>    type Output = T; where
    F: FnOnce() -> T + Send + 'static,
    T: Send + 'static, 
Expand description

Spawns a blocking task.

The task will be spawned onto a thread pool specifically dedicated to blocking tasks. This is useful to prevent long-running synchronous operations from blocking the main futures executor.

See also: task::block_on, task::spawn.

Examples

Basic usage:

use async_std::task;

task::spawn_blocking(|| {
    println!("long-running task here");
})
.await;