pub async fn run<F, Fut>(
session: &Session,
cases: &[Case],
ask: F,
concurrency: usize,
) -> Vec<Outcome>Expand description
Send every case through ask, at most concurrency at a time; results are in case order.
Every case is spawned at once and a semaphore decides how many are in the air, so a slow case holds up nothing but itself, and each result is written to its own slot: a file of a thousand labels keeps its order however the calls come back.