Нет никакой разницы, потому что вы не используете suspendCoroutine
. Чтобы добиться приостановки, неблокирующего поведения, сначала вам нужен API, который не выполняет блокирующие вызовы, а вместо этого имеет метод, который запускает операцию и немедленно возвращает ее, но получает от вас callback , который будет уведомлен о результате. Например:
suspend fun doSomething2() = suspendCoroutine<Boolean> { continuation ->
asyncLongtimeFunction(object: Callback {
override fun onSuccess(res: Boolean) {
continuation.resume(res)
}
})
}