pub trait AsyncRuntime: Send + Sync + 'static {
    type Delay: Future<Output = ()> + Send;
    fn spawn<T>(task: T)
    where
        T: Future<Output = ()> + Send + 'static
;
fn delay_for(duration: Duration) -> Self::Delay; }
Expand description

An abstraction over asynchronous runtimes.

There are several asynchronous runtimes available for Rust. By default rust-rdkafka uses Tokio, via the TokioRuntime, but it has pluggable support for any runtime that can satisfy this trait.

For an example of using the smol runtime with rust-rdkafka, see the runtime_smol example.

For an example of using the async-std runtime with rust-rdkafka, see the runtime_async_std example.

Associated Types

The type of the future returned by delay_for.

Required methods

Spawns an asynchronous task.

The task should be be polled to completion, unless the runtime exits first. With some runtimes this requires an explicit “detach” step.

Constructs a future that will resolve after duration has elapsed.

Implementors