Framework asíncrono de Kotlin para crear microservicios, aplicaciones web y API HTTP, desarrollado por JetBrains.
Kotlin/kotlinx.coroutines
Biblioteca de Kotlin que ofrece builders de coroutines, dispatchers, Flow, canales y primitivas de concurrencia estructurada para código asíncrono.
- Estrellas
- 13,823
- Forks
- 1,951
- Issues abiertos
- 348
- Último commit
- anteayer
¿Qué es?
kotlinx.coroutines es la biblioteca oficial de Kotlin que añade compatibilidad con coroutines sobre las funciones suspending del lenguaje. Proporciona builders como launch y async, que devuelven referencias cancelables Job y Deferred, además de delay, yield y builders de scope como coroutineScope y withTimeout para organizar el trabajo en jerarquías estructuradas.
Además de los componentes básicos, la biblioteca incluye Flow, que permite crear streams asíncronos fríos con un amplio conjunto de operadores; Channel, Mutex y Semaphore para la comunicación y la sincronización; y select para esperar a varias fuentes suspending. Los dispatchers permiten ejecutar tareas en segundo plano, y los módulos específicos de cada plataforma añaden un dispatcher Main para Android, JavaFX y Swing, un dispatcher IO e integración con CompletableFuture en JVM, y compatibilidad con Promise en Kotlin/JS y Wasm.
El proyecto también ofrece kotlinx-coroutines-test para ejecutar código suspending en pruebas con runTest y un TestScope con tiempo virtual; un módulo de depuración con DebugProbes para volcar información sobre las coroutines activas; y módulos reactivos y de integración para Reactive Streams, RxJava, Project Reactor, Guava y Google Play Services. Los módulos principales son compatibles con JVM, JS y Native.
Funciones clave
- 01Builders launch y async que devuelven referencias cancelables Job y Deferred.
- 02Streams fríos Flow con un conjunto completo de operadores.
- 03Channel, Mutex y Semaphore para la comunicación y la sincronización.
- 04Dispatchers para tareas en segundo plano, IO y los hilos principales de Android, Swing y JavaFX.
- 05Utilidades de prueba con runTest y TestScope, además de un módulo DebugProbes para inspeccionar coroutines.
Casos de uso
- Escribir lógica asíncrona y concurrente en aplicaciones de servidor o escritorio con Kotlin/JVM.
- Crear aplicaciones Android que necesiten dispatching de coroutines en el hilo principal y registro de errores.
- Compartir lógica de negocio basada en coroutines entre distintos targets de Kotlin Multiplatform.
- Probar funciones suspending con tiempo virtual.
Inicio rápido
- 1
Añade la dependencia kotlinx-coroutines-core a tu compilación de Gradle
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0") - 2
Asegúrate de que mavenCentral() esté en tus repositorios
mavenCentral() - 3
Usa la versión más reciente de Kotlin en el bloque plugins
kotlin("jvm") version "2.2.20"
Temas
Preguntas frecuentes
- ¿Qué es kotlinx.coroutines?
- Biblioteca de Kotlin que ofrece builders de coroutines, dispatchers, Flow, canales y primitivas de concurrencia estructurada para código asíncrono. kotlinx.coroutines es la biblioteca oficial de Kotlin que añade compatibilidad con coroutines sobre las funciones suspending del lenguaje. Proporciona builders como launch y async, que devuelven referencias cancelables Job y Deferred, además de delay, yield y builders de scope como coroutineScope y withTimeout para organizar el trabajo en jerarquías estructuradas.
- ¿kotlinx.coroutines es gratuito? ¿Qué licencia tiene?
- kotlinx.coroutines es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿kotlinx.coroutines sigue mantenido?
- Mantenimiento activo. El último commit de kotlinx.coroutines fue el 23 oct 2026.
- ¿Para qué puedo usar kotlinx.coroutines?
- Escribir lógica asíncrona y concurrente en aplicaciones de servidor o escritorio con Kotlin/JVM. Crear aplicaciones Android que necesiten dispatching de coroutines en el hilo principal y registro de errores. Compartir lógica de negocio basada en coroutines entre distintos targets de Kotlin Multiplatform. Probar funciones suspending con tiempo virtual.
- ¿Cómo se instala kotlinx.coroutines?
- Añade la dependencia kotlinx-coroutines-core a tu compilación de Gradle: implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0") Asegúrate de que mavenCentral() esté en tus repositorios: mavenCentral() Usa la versión más reciente de Kotlin en el bloque plugins: kotlin("jvm") version "2.2.20"
- ¿Dónde consigo kotlinx.coroutines?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Kotlin/kotlinx.coroutines
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Implementación de Reactive Extensions para la JVM de Java que permite componer programas asíncronos y basados en eventos mediante secuencias observables.
Extensión de PHP que ofrece un motor de red basado en eventos y un entorno de ejecución de corutinas para crear servicios persistentes de TCP, UDP, HTTP y WebSocket.
Un framework de actores para Rust que ejecuta actores con paso de mensajes tipados en el runtime de Tokio y ofrece supervisión.
Una gema de Ruby con primitivas de concurrencia como futures, promises, pools de hilos, agents, atoms, colecciones thread-safe y clases de sincronización.
Colección gratuita y de código abierto de ejercicios y ejemplos de Rust, organizados por capítulos, con código ejecutable y editable, y soluciones.