parTraverseN

suspend fun <A, B> Iterable<A>.parTraverseN(n: Int, f: suspend CoroutineScope.(A) -> B): List<B>(source)

Traverses this Iterable and runs f in n parallel operations on Dispatchers.Default. Cancelling this operation cancels all running tasks.


suspend fun <A, B> Iterable<A>.parTraverseN(ctx: CoroutineContext = EmptyCoroutineContext, n: Int, f: suspend CoroutineScope.(A) -> B): List<B>(source)

Traverses this Iterable and runs f in n parallel operations on ctx.

Coroutine context is inherited from a CoroutineScope, additional context elements can be specified with ctx argument. If the combined context does not have any dispatcher nor any other ContinuationInterceptor, then Dispatchers.Default is used. WARNING If the combined context has a single threaded ContinuationInterceptor, this function will not run in parallel.

Cancelling this operation cancels all running tasks.