Задать вопрос
@Varandey

Как переписать этот код на использование корутин в котлине?

Происходит ошибка:
"Suspension functions can be called only within coroutine body"

result = CompletableFuture.supplyAsync { 
                    myService.getInfo()  //Suspension functions can be called only within coroutine body
            }
  • Вопрос задан
  • 919 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Stepik
    Kotlin JVM – курс для начинающих
    2 недели
    Далее
  • OTUS
    Kotlin QA Engineer
    4 месяца
    Далее
  • Нетология
    Android-разработчик с нуля
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@koperagen
Привет. Зависит от того, что тебе нужно сделать. Если просто хочешь завернуть результат suspend функции в CompletableFuture, то тебе поможет адаптер https://github.com/Kotlin/kotlinx.coroutines/tree/...
Но в kotlinx.coroutines есть свой примитив для этого, Defered. С ним код будет выглядеть так
result = async {
    myService.getInfo()
}

Если вопрос именно про переписывание, то поделись информацией о том что ты вообще делаешь, как используешь в своем коде этот CompletableFuture.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы