Sobes.tech
Junior — Middle

Como executar uma função suspensa em Kotlin?

sobes.tech IA

Resposta da IA

Em Kotlin, uma função suspensa (suspend function) é chamada a partir de uma coroutine ou de outra função suspensa. Não é possível chamar uma função suspensa diretamente a partir de código normal.

Exemplo de chamada de uma função suspensa:

import kotlinx.coroutines.*

suspend fun fetchData(): String {
    delay(1000) // simulação de uma operação longa
    return "Dados recebidos"
}

fun main() = runBlocking {
    val result = fetchData() // chamada de função suspensa dentro de uma coroutine
    println(result)
}

Aqui, runBlocking inicia uma coroutine, dentro da qual é possível chamar funções suspensas. No Android, geralmente usam-se lifecycleScope.launch ou outros CoroutineScope para chamar funções suspensas.