JetBrainsが開発する、マイクロサービスやWebアプリケーション、HTTP APIを構築するための非同期Kotlinフレームワーク。
Kotlin/kotlinx.coroutines
非同期コード向けに、コルーチンビルダー、Dispatcher、Flow、Channel、構造化並行性のプリミティブを提供するKotlinライブラリ。
- スター
- 13,823
- フォーク
- 1,951
- 未解決の Issue
- 348
- 最終コミット
- 昨日
これは何?
kotlinx.coroutinesは、Kotlinのsuspend関数にコルーチン機能を追加する公式ライブラリです。launchやasyncなどのビルダーが、キャンセル可能なJobやDeferredのハンドルを返します。また、delayやyieldに加え、coroutineScopeやwithTimeoutなどのスコープビルダーを使って処理を構造化された階層に整理できます。
中核機能に加え、幅広いオペレーターを備えたコールドな非同期ストリームのFlow、通信と同期に使うChannel、Mutex、Semaphore、複数のsuspend可能なソースを待ち受けるselectを提供します。Dispatcherはバックグラウンド処理を担います。プラットフォーム固有のモジュールには、Android、JavaFX、Swing向けのMain Dispatcher、JVM向けのIO DispatcherとCompletableFuture連携、Kotlin/JSおよびWasm向けのPromiseサポートがあります。
さらに、runTestと仮想時間を扱うTestScopeでsuspendコードをテストできるkotlinx-coroutines-test、実行中のコルーチンをダンプするDebugProbesを備えたdebugモジュール、Reactive Streams、RxJava、Project Reactor、Guava、Google Play Services向けのリアクティブおよび連携モジュールも提供します。コアモジュールはJVM、JS、Nativeを対象としています。
主な機能
- 01キャンセル可能なJobおよびDeferredのハンドルを返すlaunchとasyncのビルダー。
- 02豊富なオペレーターを備えた、コールドストリームのFlow。
- 03通信と同期に使うChannel、Mutex、Semaphore。
- 04バックグラウンド、IO、およびAndroid/Swing/JavaFXのメインスレッド向けDispatcher。
- 05runTestとTestScopeを備えたテストユーティリティに加え、コルーチンの調査に使えるDebugProbesモジュール。
ユースケース
- Kotlin/JVMのサーバーアプリケーションやデスクトップアプリケーションで、非同期・並行処理のロジックを記述する。
- メインスレッドへのコルーチンのディスパッチとクラッシュログを必要とするAndroidアプリを構築する。
- Kotlin Multiplatformの複数のターゲット間で、コルーチンベースのビジネスロジックを共有する。
- 仮想時間を使ってsuspend関数をテストする。
クイックスタート
- 1
Gradleのビルドにkotlinx-coroutines-core依存関係を追加します
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0") - 2
repositoriesにmavenCentral()が含まれていることを確認します
mavenCentral() - 3
pluginsブロックで最新のKotlinバージョンを使用します
kotlin("jvm") version "2.2.20"
トピック
よくある質問
- kotlinx.coroutines とは?
- 非同期コード向けに、コルーチンビルダー、Dispatcher、Flow、Channel、構造化並行性のプリミティブを提供するKotlinライブラリ。 kotlinx.coroutinesは、Kotlinのsuspend関数にコルーチン機能を追加する公式ライブラリです。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の複数のターゲット間で、コルーチンベースのビジネスロジックを共有する。 仮想時間を使ってsuspend関数をテストする。
- kotlinx.coroutines のインストール方法は?
- Gradleのビルドにkotlinx-coroutines-core依存関係を追加します: implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0") repositoriesにmavenCentral()が含まれていることを確認します: mavenCentral() pluginsブロックで最新のKotlinバージョンを使用します: kotlin("jvm") version "2.2.20"
- kotlinx.coroutines はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/Kotlin/kotlinx.coroutines
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
observableシーケンスを使って非同期・イベントベースのプログラムを組み立てる、Java VM向けReactive Extensions実装。
長時間稼働するTCP、UDP、HTTP、WebSocketサービスの構築に使える、イベント駆動型ネットワークエンジンとコルーチンランタイムを提供するPHP拡張です。
Tokioランタイム上で型付きメッセージをやり取りするRust製アクターフレームワーク。スーパービジョンにも対応。
future、promise、スレッドプール、agent、atom、スレッドセーフなコレクション、同期クラスなどの並行処理プリミティブを提供するRuby gem。
章ごとに実行・編集可能なコードと解答を収録した、無料のオープンソースRust演習・サンプル集。