Назад к задачам
Junior — Senior
24

Что произойдёт с переменной при множественном запуске корутин?

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Определите, какой результат будет напечатан в консоль после выполнения следующего кода:

val scope = CoroutineScope(Dispatchers.Default + SupervisorJob())
var i = 0

fun main() = runBlocking {
    repeat(100000) {
        increase()
    }

    println(i)
}

fun increase() = scope.launch {
    synchronized(this) {
        i++
    }
}