Motivation
Phase 1 - The Executor
1.
What is an executor?
2.
API
3.
Prerequisites - Rust Primitives
3.1.
Future
3.2.
Async/Await
3.3.
Waker
4.
Implementation Details
4.1.
Architecture
4.2.
Task
4.3.
Running the Task
4.4.
TaskQueue
4.5.
Waker
4.6.
Local Executor
4.7.
Join Handle
5.
Life of a Task
6.
Pinned Threads
Phase 2 - Asynchronous I/O
7.
What is Asynchronous I/O?
8.
Prerequisites
8.1.
Non-blocking I/O
8.2.
Io_uring
9.
API
10.
Implementation Details
10.1.
Core abstractions
10.2.
Step 1 - Setting the O_NONBLOCK Flag
10.3.
Step 2 - Submitting a SQE
10.4.
Step 3 - Processing the CQE
Light
Rust
Coal
Navy
Ayu
Building an Asynchronous Runtime like Glommio
Prerequisites - Building Blocks