#async-executor #executor #async #concurrency #async-task #channel #io

bin+lib aiur

Single threaded async executor with structured concurrency

7 releases

0.0.8 Nov 17, 2022
0.0.7 Dec 7, 2021
0.0.5 Nov 12, 2021
0.0.3 Jul 6, 2021
0.0.1 Sep 15, 2020

#927 in Asynchronous

MIT license

190KB
4K SLoC

Build Status

aiur

Aiur is async executor for Rust that has been created to explorer how far we can go with the following initial design ideas:

  • structured concurrency
  • single thread executor
  • lifetime bounded
  • no or minimal dynamic allocations

It currently under the heavy development in not yet ready for production use.

Usage

aiur itself is only an "executor" part of the async runtime, which is in a nutshell a task management and channels. To write a program it usually needed a "reactor" component, which is code that makes actual I/O with OS. aiur has a "toy runtime" built-in, e.g. reactor that can only do waitings.

aiur is not supposed to be directly used by the apps. Some reactor library should be built upon aiur and apps can use runtime that provided by this reactor library. There is no such reactor library are published yet.

Since aiur does not have any system I/O it is based on rust standard library, so it is portable.

No runtime deps