Назад к задачам
Условие задачи

Какой диапазон может принимать число, выводимое в консоль?

suspend fun massiveRun(action: suspend () -> Unit) {
    val n = 100      // number of coroutines to launch
    val k = 1000     // times an action is repeated by each coroutine

    val time = measureTimeMillis {
        coroutineScope { // scope for coroutines
            repeat(n) {
                launch {
                    repeat(k) { action() }
                }
            }
        }
    }
    println("Completed ${n * k} actions in $time ms")
}

var counter = 0

fun main() = runBlocking {
    withContext(Dispatchers.Default) {
        massiveRun {
            counter++
        }
    }
    println("Counter = $counter")
}