Практика корутин в Kotlin
В runBlocking выведите "gate",
сделайте паузу на 100 миллисекунд и
напечатайте "open". После блока -
"exit".
Объявите suspend-функцию, которая
возвращает строку "token" после короткой
паузы. Получите значение в runBlocking
и выведите его.
Запустите две фоновые корутины с метками
"east" и "west". Дождитесь
обеих через join и напечатайте
"map".
Параллельно вычислите суммы элементов пар
2+3 и 5+7 с
короткой паузой в каждой задаче. Выведите общий
итог двух ответов.
В withContext на Dispatchers.Default
напечатайте "calc". Сразу после блока
выведите "main" из runBlocking.
Фоновый цикл печатает "tick" с паузой.
Отмените задачу через 150 миллисекунд
ожидания и после join выведите
"off".
Оберните runBlocking в try.
Внутри фоновая корутина бросает
RuntimeException с текстом "stop".
В обработчике напечатайте "logged" и
затем "end" снаружи try.