use futures::future::join_all;
use async_std::task;
#[async_std::main]
async fn main() {
let a = |i| async move {
task::sleep(std::time::Duration::from_secs(i)).await;
i
};
let mut task_list = vec![];
for i in 1..=10 {
task_list.push(a(i));
}
let ans = join_all(task_list).await;
println!("ans = {:?}", ans);
}
// ans = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]