3 个版本
0.1.2 | 2024 年 3 月 13 日 |
---|---|
0.1.1 | 2024 年 3 月 10 日 |
0.1.0 | 2024 年 3 月 10 日 |
#347 在 并发
16KB
rider
为 tokio 提供的限界执行器;限制正在运行的任务数量
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;
}
lib.rs
:
该库为 tokio 提供了限界执行器,方便以固定数量并发运行任务
依赖
~2–3MB
~47K SLoC