[][src]Crate async_global_executor

A global executor built on top of async-executor and async_io

The global executor is lazily spawned on first use. It spawns as many threads as the number of cpus by default. You can override this using the ASYNC_GLOBAL_EXECUTOR_THREADS environment variable.

Examples


// spawn a task on the multi-threaded executor
let task1 = async_global_executor::spawn(async {
    1 + 2
});
// spawn a task on the local executor (same thread)
let task2 = async_global_executor::spawn_local(async {
    3 + 4
});
let task = future::zip(task1, task2);

// run the executor
async_global_executor::run(async {
    assert_eq!(task.await, (3, 7));
});

Functions

run

Runs the global and the local executor on the current thread

spawn

Spawns a task onto the multi-threaded global executor.

spawn_local

Spawns a task onto the local executor.