Concurrent

  
コルーチンを使用してメインスレッドからタスクを移動し、ListenableFuture を活用します。
最新の更新 安定版リリース リリース候補版 ベータ版リリース アルファ版リリース
2024 年 3 月 20 日 1.1.0 - - 1.2.0-alpha03

依存関係の宣言

Futures への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

Groovy

dependencies {
    implementation "androidx.concurrent:concurrent-futures:1.1.0"

    // Kotlin
    implementation "androidx.concurrent:concurrent-futures-ktx:1.1.0"
}

Kotlin

dependencies {
    implementation("androidx.concurrent:concurrent-futures:1.1.0")

    // Kotlin
    implementation("androidx.concurrent:concurrent-futures-ktx:1.1.0")
}

依存関係について詳しくは、ビルド依存関係の追加をご覧ください。

フィードバック

お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

バージョン 1.2

バージョン 1.2.0-alpha03

2024 年 3 月 20 日

androidx.concurrent:concurrent-futures:1.2.0-alpha03androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha03 がリリースされました。バージョン 1.2.0-alpha03 に含まれる commit については、こちらをご覧ください。

バグの修正

  • SuspendToFutureAdapter タスクが例外をスローした場合のエラー処理のバグを修正しました。(b/327629504

バージョン 1.2.0-alpha02

2023 年 8 月 9 日

androidx.concurrent:concurrent-futures:1.2.0-alpha02androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha02 がリリースされました。バージョン 1.2.0-alpha02 に含まれる commit については、こちらをご覧ください

API の変更

  • suspend-ListenableFuture ブリッジを書き込むための SuspendToFutureAdapter を追加しました。(Ia8a66

バージョン 1.2.0-alpha01

2023 年 2 月 22 日

androidx.concurrent:concurrent-futures:1.2.0-alpha01androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha01 がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください

API の変更

  • ResolvableFuture のメソッドに、適切な null 可能性アノテーションが追加されました。(I2339fb/236474470

バージョン 1.1.0

バージョン 1.1.0

2020 年 8 月 19 日

androidx.concurrent:concurrent-futures:1.1.0androidx.concurrent:concurrent-futures-ktx:1.1.0 がリリースされました。1.1.0-rc01 からの変更はありません。バージョン 1.1.0 に含まれるコミットについては、こちらをご覧ください

1.0.0 以降の主な変更

  • 1.1.0 では、ListenableFuture と Kotlin Coroutine 間の変換に役立つ Kotlin 拡張機能が導入され、androidx.concurrent:concurrent-futures-ktx:1.1.0 で利用できるようになりました。このアーティファクトは、完全な Guava ライブラリではなく com.google.guava:listenablefuture で使用することを想定しています。これは、ListenableFuture のみを含む Guava の軽量版です。完全な Guava ライブラリを使用している場合、代わりに kotlinx.coroutines.kotlinx-coroutines-guava の ListenableFuture 公式拡張機能を使用してください。

バージョン 1.1.0-rc01

2020 年 7 月 22 日

androidx.concurrent:concurrent-futures:1.1.0-rc01androidx.concurrent:concurrent-futures-ktx:1.1.0-rc01 がリリースされました。1.1.0-beta01 からの変更はありません。バージョン 1.1.0-rc01 に含まれるコミットについては、こちらをご覧ください

バージョン 1.1.0-beta01

2020 年 6 月 24 日

androidx.concurrent:concurrent-futures:1.1.0-beta01androidx.concurrent:concurrent-futures-ktx:1.1.0-beta01 がリリースされました。1.1.0-alpha01 からの変更はありません。バージョン 1.1.0-beta01 に含まれるコミットについては、こちらをご覧ください

バージョン 1.1.0-alpha01

2019 年 12 月 18 日

androidx.concurrent:concurrent-futures:1.1.0-alpha01androidx.concurrent:concurrent-futures-ktx:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれるコミットについては、こちらをご覧ください。これは androidx.concurrent:concurrent-futures-ktx の最初のリリースです。

新機能

  • ListenableFuture と Kotlin Coroutine 間の変換をサポートする Kotlin 拡張機能が concurrent-futures-ktx で利用可能になりました。このアーティファクトは、完全な Guava ライブラリではない com.google.guava:listenablefuture を使用することを前提としています。これは、ListenableFuture のみが含まれるため軽量で、Guava の代わりに使用されます。完全な Guava ライブラリを使用している場合、代わりに kotlinx.coroutines.kotlinx-coroutines-guava の ListenableFuture 公式拡張機能を使用してください。

API の変更

  • 一時停止を行う ListenableFuture.await() 拡張機能を追加。ListenableFuture を Kotlin Coroutine に変換します。

バージョン 1.0.0

バージョン 1.0.0

2019 年 10 月 9 日

androidx.concurrent:concurrent-futures:1.0.0 がリリースされました。バージョン 1.0.0 に含まれるコミットについては、こちらをご覧ください

1.0.0 の重要な機能

androidx.concurrent:concurrent-futures:1.0.0CallbackToFutureAdapter クラスを提供します。これは、コールバック ベースのコードをラップして ListenableFuture のインスタンスを返すことができる最小限のユーティリティです。Java API の非同期操作を、カスタム コールバックよりも洗練された方法で公開するライブラリの場合には便利ですが、ライブラリ サイズの問題のため、完全な guava や rx java に依存するマルチスレッドの重い処理をあまり行わないようにしてください。

バージョン 1.0.0-rc01

2019 年 8 月 7 日

androidx.concurrent:concurrent-futures:1.0.0-rc01 がリリースされました。1.0.0-beta01 からの変更はありません。このバージョンに含まれるコミットについては、こちらをご覧ください。

Concurrent-ListenableFuture バージョン 1.0.0-beta01

2019 年 5 月 30 日

androidx.concurrent:concurrent-listenablefuture:1.0.0-beta01androidx.concurrent:concurrent-listenablefuture-callback:1.0.0-beta01 がリリースされました。このバージョンに含まれるコミットについては、こちらをご覧ください。

これらのライブラリは、Guava の ListenableFuture インターフェースに相当するスタンドアロンと、コールバックを変換するアダプターを提供します。

以前リリースされた androidx.concurrent:concurrent-futures アーティファクトは、同様のアダプターを提供し、com.google.guava:listenablefuture アーティファクトを含んでいましたが、厳密な依存関係の解決マッチングを伴う Android Gradle Plugin 3.4.0 などのツールチェーンを使用するデベロッパーにとっては問題となる可能性があります。完全な Guava ライブラリに依存しないデベロッパーには、androidx.concurrent:concurrent-listenablefuture-callback に切り替えることをおすすめします。

バージョン 1.0.0-beta01

2019 年 5 月 7 日

androidx.concurrent:concurrent-futures:1.0.0-beta01 がリリースされました。このバージョンに含まれる commit については、こちらをご覧ください。

API の変更

  • ResolvableFutureAbstractResolvableFuture は、より安全な API を提供する CallbackToFutureAdapter のために、公開 API から非表示になりました。

バージョン 1.0.0-alpha03

2018 年 12 月 17 日

androidx.concurrent:concurrent-futures 1.0.0-alpha03 がリリースされました。

新機能

  • CallbackToFutureAdapter が導入されました。コールバック駆動型 API を ListenableFuture にラップする、新しくてより安全な API です。ResolvableFuture の使用よりも優先します。