Framework assíncrono em Kotlin para criar microsserviços, aplicações web e APIs HTTP, desenvolvido pela JetBrains.
Kotlin/kotlinx.coroutines
Biblioteca Kotlin com builders de coroutines, dispatchers, Flow, canais e primitivas de concorrência estruturada para código assíncrono.
- Estrelas
- 13,823
- Forks
- 1,951
- Issues abertas
- 348
- Último commit
- anteontem
O que é?
kotlinx.coroutines é a biblioteca oficial do Kotlin que adiciona suporte a coroutines sobre as funções suspensas da linguagem. Ela oferece builders como launch e async, que retornam referências canceláveis do tipo Job e Deferred, além de delay, yield e builders de escopo como coroutineScope e withTimeout para organizar o trabalho em hierarquias estruturadas.
Além dos recursos básicos, a biblioteca inclui Flow para streams assíncronos frios com um amplo conjunto de operadores, Channel, Mutex e Semaphore para comunicação e sincronização, e select para aguardar várias fontes suspensas. Os Dispatchers atendem ao trabalho em segundo plano, e módulos específicos de cada plataforma adicionam um dispatcher Main para Android, JavaFX e Swing, um dispatcher IO e integração com CompletableFuture na JVM, além de suporte a Promise no Kotlin/JS e no Wasm.
O projeto também oferece kotlinx-coroutines-test, para executar código suspenso em testes com runTest e um TestScope de tempo virtual; um módulo de debug com DebugProbes para listar coroutines ativas; e módulos de integração e reativos para Reactive Streams, RxJava, Project Reactor, Guava e Google Play Services. Os módulos principais têm como alvo JVM, JS e Native.
Recursos principais
- 01Builders launch e async que retornam referências canceláveis do tipo Job e Deferred.
- 02Streams frios de Flow com um conjunto abrangente de operadores.
- 03Channel, Mutex e Semaphore para comunicação e sincronização.
- 04Dispatchers para threads de segundo plano, IO e principais do Android, Swing e JavaFX.
- 05Utilitários de teste com runTest e TestScope, além de um módulo DebugProbes para inspecionar coroutines.
Casos de uso
- Escrever lógica assíncrona e concorrente em aplicações Kotlin/JVM para servidores ou desktop.
- Criar apps Android que precisam de dispatch de coroutines na thread principal e registro de falhas.
- Compartilhar lógica de negócio baseada em coroutines entre plataformas Kotlin Multiplatform.
- Testar funções suspensas com tempo virtual.
Início rápido
- 1
Adicione a dependência kotlinx-coroutines-core ao seu build do Gradle
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0") - 2
Confira se mavenCentral() está nos seus repositórios
mavenCentral() - 3
Use a versão mais recente do Kotlin no bloco plugins
kotlin("jvm") version "2.2.20"
Tópicos
Perguntas frequentes
- O que é kotlinx.coroutines?
- Biblioteca Kotlin com builders de coroutines, dispatchers, Flow, canais e primitivas de concorrência estruturada para código assíncrono. kotlinx.coroutines é a biblioteca oficial do Kotlin que adiciona suporte a coroutines sobre as funções suspensas da linguagem. Ela oferece builders como launch e async, que retornam referências canceláveis do tipo Job e Deferred, além de delay, yield e builders de escopo como coroutineScope e withTimeout para organizar o trabalho em hierarquias estruturadas.
- kotlinx.coroutines é gratuito? Qual é a licença?
- kotlinx.coroutines é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- kotlinx.coroutines ainda é mantido?
- Manutenção ativa. O último commit de kotlinx.coroutines foi em 23 de out. de 2026.
- Para que posso usar kotlinx.coroutines?
- Escrever lógica assíncrona e concorrente em aplicações Kotlin/JVM para servidores ou desktop. Criar apps Android que precisam de dispatch de coroutines na thread principal e registro de falhas. Compartilhar lógica de negócio baseada em coroutines entre plataformas Kotlin Multiplatform. Testar funções suspensas com tempo virtual.
- Como instalar kotlinx.coroutines?
- Adicione a dependência kotlinx-coroutines-core ao seu build do Gradle: implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0") Confira se mavenCentral() está nos seus repositórios: mavenCentral() Use a versão mais recente do Kotlin no bloco plugins: kotlin("jvm") version "2.2.20"
- Onde consigo kotlinx.coroutines?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Kotlin/kotlinx.coroutines
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Implementação das Reactive Extensions para a Java VM, que permite compor programas assíncronos e orientados a eventos com sequências observáveis.
Extensão PHP que oferece um mecanismo de rede orientado a eventos e um runtime de corrotinas para criar serviços TCP, UDP, HTTP e WebSocket de longa duração.
Um framework de atores para Rust que executa atores com troca de mensagens tipadas no runtime Tokio e oferece suporte à supervisão.
Gem Ruby com primitivas de concorrência, como futures, promises, pools de threads, agents, atoms, coleções thread-safe e classes de sincronização.
Uma coleção gratuita e de código aberto de exercícios e exemplos de Rust, organizada por capítulos, com código executável e editável e soluções.