rider

Crates.iorider
lib.rsrider
version0.1.2
sourcesrc
created_at2024-03-10 21:18:54.571334
updated_at2024-03-13 18:02:58.956467
descriptionbounded executor for tokio; limit the count of tasks running 🚦
homepage
repositoryhttps://github.com/redcloudvg/rider
max_upload_size
id1168964
size42,133
(priv2024)

documentation

https://docs.rs/rider

README

rider

License Cargo Documentation

bounded executor for tokio; limit the count of tasks running

use rider::{Rider, RiderError};

#[tokio::main]
async fn main() -> Result<(), RiderError> {
    // create an executor that allows at most 10 task running concurrently
    let rider = Rider::new(10);

    for index in 0..10000 {
        rider
            .spawn(async move {
                println!("{}", index);
            })
            .await?; // Suspends until task is spawned
    }

    // Deny further tasks and join remaining tasks
    rider.shutdown().await;
}
Commit count: 0

cargo fmt