Junior — Middle
¿Qué formas de realizar tareas en Coroutines conoces?
sobes.tech AI
Respuesta de la IA
En Kotlin Coroutines, las tareas se pueden realizar de varias maneras:
-
launch — inicia una nueva coroutine que se ejecuta en paralelo y no devuelve resultado. Se usa para tareas en segundo plano donde no se necesita resultado.
-
async — inicia una coroutine que devuelve un resultado en forma de Deferred, permitiendo obtener el resultado mediante await(). Es adecuado para cálculos paralelos con resultado.
-
runBlocking — bloquea el hilo actual hasta que la coroutine termina, y se usa a menudo en funciones main o en pruebas.
-
withContext — cambia el contexto de ejecución (por ejemplo, a Dispatchers.IO para operaciones de entrada/salida) y ejecuta un bloque de código, devolviendo el resultado.
Ejemplo:
import kotlinx.coroutines.*
fun main() = runBlocking {
launch {
delay(1000)
println("Tarea en launch")
}
val result = async {
delay(500)
42
}
println("Resultado de async: ${result.await()}")
}