Skip to main content

Module async_exec

Module async_exec 

Source
Expand description

Async graph execution mode using tokio tasks for I/O-bound source/sink nodes.

This module provides an async executor that dispatches each graph node as an independent tokio task. I/O-bound source and sink nodes benefit the most because they can yield the thread while waiting for data, allowing other nodes to make progress concurrently.

§Design

The AsyncExecutor maps an ExecutionPlan onto tokio tasks:

  • Each stage becomes a tokio::task::JoinSet that runs all nodes in the stage concurrently.
  • Stages are still sequentially ordered, so data-flow dependencies are respected.
  • An optional timeout per stage prevents I/O-bound nodes from stalling the whole graph.

Structs§

AsyncExecutor
Async graph executor using tokio tasks.
AsyncExecutorConfig
Configuration for the async graph executor.