Function async_std::task::spawn_blocking
source · [−]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;