Repolode
Kotlin

Kotlin/kotlinx.coroutines

Kotlin 协程库,提供协程构建器、调度器、Flow、Channel 等异步编程与结构化并发工具。

Star
13,823
Fork
1,951
未关闭 Issue
348
最近提交
前天

这是什么?

kotlinx.coroutines 是 Kotlin 官方的协程库,在语言的挂起函数之上提供完整的协程支持。它包含 launch、async 等构建器,返回可取消的 Job 与 Deferred,并提供 delay、yield,以及 coroutineScope、withTimeout 等作用域构建器,用于把任务组织成结构化的层级。

除核心功能外,库中还包括用于冷异步流的 Flow 及丰富的操作符,用于通信与同步的 Channel、Mutex、Semaphore,以及用于同时等待多个挂起源的 select。调度器覆盖后台计算场景;平台模块则为 Android、JavaFX、Swing 提供 Main 调度器,为 JVM 提供 IO 调度器和 CompletableFuture 集成,并为 Kotlin/JS 与 Wasm 提供 Promise 支持。

项目还提供 kotlinx-coroutines-test,用 runTest 与虚拟时间的 TestScope 测试挂起代码;debug 模块中的 DebugProbes 可用于导出活动协程的信息;reactive 与 integration 模块则对接 Reactive Streams、RxJava、Project Reactor、Guava 和 Google Play Services。核心模块支持 JVM、JS 和 Native 平台。

核心功能

  • 01launch 与 async 构建器,返回可取消的 Job 和 Deferred。
  • 02Flow 冷流及完整的操作符集合。
  • 03Channel、Mutex、Semaphore 用于通信与同步。
  • 04提供后台、IO 以及 Android、Swing、JavaFX 主线程调度器。
  • 05通过 runTest 和 TestScope 进行测试,并用 DebugProbes 查看活动协程。

适用场景

  • 在 Kotlin/JVM 服务端或桌面应用中编写异步与并发逻辑。
  • 开发需要主线程协程调度和未捕获异常日志的 Android 应用。
  • 在 Kotlin Multiplatform 的多个目标平台间共享基于协程的业务代码。
  • 使用虚拟时间测试挂起函数。

快速上手

  1. 1

    在 Gradle 构建中添加 kotlinx-coroutines-core 依赖

    implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0")
  2. 2

    确保仓库列表中包含 mavenCentral()

    mavenCentral()
  3. 3

    在 plugins 块中使用最新的 Kotlin 版本

    kotlin("jvm") version "2.2.20"

标签

常见问题

kotlinx.coroutines 是什么?
Kotlin 协程库,提供协程构建器、调度器、Flow、Channel 等异步编程与结构化并发工具。 kotlinx.coroutines 是 Kotlin 官方的协程库,在语言的挂起函数之上提供完整的协程支持。它包含 launch、async 等构建器,返回可取消的 Job 与 Deferred,并提供 delay、yield,以及 coroutineScope、withTimeout 等作用域构建器,用于把任务组织成结构化的层级。
kotlinx.coroutines 可以免费使用吗?用的什么许可证?
kotlinx.coroutines 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
kotlinx.coroutines 还在维护吗?
活跃维护中。kotlinx.coroutines 最近一次提交是在 2026年10月23日。
kotlinx.coroutines 适合用来做什么?
在 Kotlin/JVM 服务端或桌面应用中编写异步与并发逻辑。 开发需要主线程协程调度和未捕获异常日志的 Android 应用。 在 Kotlin Multiplatform 的多个目标平台间共享基于协程的业务代码。 使用虚拟时间测试挂起函数。
kotlinx.coroutines 怎么安装和运行?
在 Gradle 构建中添加 kotlinx-coroutines-core 依赖: implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0") 确保仓库列表中包含 mavenCentral(): mavenCentral() 在 plugins 块中使用最新的 Kotlin 版本: kotlin("jvm") version "2.2.20"
在哪里获取 kotlinx.coroutines?
源代码和安装说明在 GitHub 上:https://github.com/Kotlin/kotlinx.coroutines

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目