| Crates.io | exo_task |
| lib.rs | exo_task |
| version | 0.1.2 |
| created_at | 2025-02-13 14:40:54.485321+00 |
| updated_at | 2025-02-13 15:15:24.449187+00 |
| description | A lightweight async task executor for bare metal (or any) systems |
| homepage | |
| repository | https://github.com/gtmos-os/exo_task |
| max_upload_size | |
| id | 1554280 |
| size | 29,293 |
A lightweight async task executor for bare metal (or any) systems, supporting no_std environments.
no_std compatible (requires alloc)Add this to your Cargo.toml:
[dependencies]
exo_task = "0.1.2"
For x86_64 platform support without std:
[dependencies]
exo_task = { version = "0.1.2", default-features = false, features = ["x86_64"] }
use exo_task::{Task, SimpleExecutor};
async fn example_task() {
// Your async code here
}
let mut executor = SimpleExecutor::new();
executor.spawn(Task::new(example_task()));
executor.run();
Licensed under either of:
at your option.
Note: This licensing applies only to the current branch.
This crate is based on Philipp Oppermann's Async/Await implementation from his "Writing an OS in Rust" series, adapted into a standalone crate for broader use.
Documentation and comments were enhanced using GitHub Copilot while preserving the original code functionality.
Unless explicitly stated otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
This project is currently in development. API may change between versions.