Crate ato

Crate ato 

Source
Expand description

ATO: A simple task async runtime for no_std environments with no alloc required.

This library provides a basic task spawner and runner, allowing you to spawn futures and run them to completion in a queued manner (FIFO).

It is designed to be used in environments without the standard library (no_std) or no heap allocation support, making it suitable for embedded systems or other constrained environments.

§Features

  • Task spawner that can queue multiple futures.
  • FIFO scheduling of tasks.
  • Simple sleep functionality using core::time::Duration.
  • Simple yielding functionality to allow tasks to yield control back to the scheduler.

Examples can be found in the examples folder, demonstrating how to use the Spawner and sleep functionality.

Modules§

channels

Macros§

channel
channel! macro creates a multi-producer, multi-consumer channel with the specified type and capacity.
spawn_task
Macro to simplify spawning tasks with the Spawner.

Structs§

Spawner
A simple task spawner and runner for no_std environments. The Spawner can queue and run multiple tasks (futures) in a FIFO manner.
TaskHandle
A handle to a task (future) that can be spawned in the ATO runtime.

Enums§

Error

Functions§

sleep
Creates a future that will “sleep” for the specified Duration.
yield_now
Creates a future that will yield execution back to the scheduler once.