Junior — Middle
Ինչպե՞ս իրականացնել սպասումը launch-ով սկսված գործի ավարտին:
sobes.tech AI
Պատասխան AI-ից
В Kotlin для ожидания завершения задачи, запущенной с помощью launch, нужно сохранить ссылку на объект Job, который возвращается функцией launch, и вызвать у него метод join(). Это приостановит текущую корутину до завершения запущенной задачи.
Пример:
val job = CoroutineScope(Dispatchers.Default).launch {
// Некоторая асинхронная работа
delay(1000L)
println("Задача завершена")
}
runBlocking {
job.join() // Ожидаем завершения задачи
println("Продолжаем после завершения")
}
Таким образом, join() позволяет синхронизировать выполнение и дождаться окончания корутины, запущенной через launch.