2 unstable releases
| new 0.2.0 | Feb 26, 2026 |
|---|---|
| 0.1.0 | Feb 26, 2026 |
#2365 in Asynchronous
17KB
371 lines
lustre-executor
A blazingly fast, minimal async executor built on Mio for low-level I/O. Features pluggable ID generation, modular design, and support for custom futures.
Installation
Add this to your Cargo.toml:
[dependencies]
lustre-executor = "0.1"
Quick Start
Get up and running in under a minute:
use lustre_executor::prelude::*;
let mut executor = Executor::new().unwrap();
executor.spawn(Task::new(async {
println!("Hello from an async task!");
}));
executor.run();
This spawns a simple task and runs the executor.
Features
- Minimal Dependencies: Only Mio and Futures.
- Pluggable ID Generation: Use custom generators for task IDs.
- I/O Support: Reactor-based async I/O with futures like
TcpListenerFutureandTimerFuture. - Generic Task IDs:
TaskId<Id>for flexibility.
Examples
See the examples/ directory for complete sample projects:
basic_spawn: Simple task spawning.custom_id_timer: Basic timer usage.
License
MIT
Dependencies
~1–11MB
~73K SLoC