Skip to main content

Crate arty_io_host

Crate arty_io_host 

Source
Expand description

Unstable I/O driver hosting utilities for the Arty runtime.

This crate is implementation infrastructure for arty. Applications and libraries should use arty instead of depending on this crate directly.

The items are public because Arty consumes them across a crate boundary. They do not form a standalone stability or compatibility promise.

§Quick start

Clone the runtime-wide registry for each worker, then create its driver host with that worker’s thread coordinate:

// One runtime-wide value owns the shared context registry and telemetry sink.
let runtime = IoRuntime::new(Sink::noop());
let worker = ThreadBuilder::default().build(std::thread::current().id());

// Each worker receives a clone and constructs its host on the thread named
// by the worker coordinate.
let host = runtime.clone().driver_host(worker, Waker::noop().clone())?;

// The runtime calls this from its worker loop with the available wait time.
host.execute_cycle(Duration::ZERO)?;

Structs§

DriverHost
Worker-local I/O driver host used by the Arty runtime.
IoRuntime
Shared registry of thread-neutral I/O contexts for one Arty runtime.