Sobes.tech
Back to tasks
Junior — Senior
133

Определение параллельного и последовательного исполнения

Companies where asked:

Uzum
Get help with live coding in real time with Sobes Copilot
Task condition

Даны две функции, которые вызывают suspend‑функцию. Нужно выяснить, в какой из них вызовы происходят одновременно, а в какой – один за другим.

fun sum(): Int {
    val first = async { suspendFun() }.await()
    val second = async { suspendFun() }.await()
    return first + second
}

fun sum2(): Int {
    val first = async { suspendFun() }
    val second = async { suspendFun() }
    return first.await() + second.await()
}

fun suspendFun(): Int {
    longBackgroundWork()
}