並行

  
運用協同程式將工作移出主執行緒,並充分運用 ListenableFuture。
最近更新時間 穩定版 候選版 Beta 版 Alpha 版
2024 年 12 月 11 日 1.2.0 - - 1.3.0-alpha01

宣告依附元件

如果要為 Futures 新增依附元件,您必須將 Google Maven 存放區新增至專案。詳情請參閱 Google 的 Maven 存放區

在應用程式或模組的 build.gradle 檔案中,新增您需要的構件依附元件:

Groovy

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

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

Kotlin

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

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

如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。

意見回饋

您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。

建立新問題

詳情請參閱 Issue Tracker 說明文件

1.3 版本

1.3.0-alpha01 版本

2024 年 12 月 11 日

發布 androidx.concurrent:concurrent-futures:1.3.0-alpha01androidx.concurrent:concurrent-futures-ktx:1.3.0-alpha01。1.3.0-alpha01 版包含這些修訂版本

修正錯誤

  • 這個程式庫現在使用 JSpecify 空值註解,這是類型用法。Kotlin 開發人員應使用下列編譯器引數,強制執行正確的用法:-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (I0faf4b/326456246)

1.2 版本

1.2.0 版本

2024 年 6 月 12 日

發布 androidx.concurrent:concurrent-futures:1.2.0androidx.concurrent:concurrent-futures-ktx:1.2.0。1.2.0 版包含這些修訂版本

自 1.1.0 版以來的重要異動

1.2.0-rc01 版本

2024 年 5 月 29 日

發布 androidx.concurrent:concurrent-futures:1.2.0-rc01androidx.concurrent:concurrent-futures-ktx:1.2.0-rc01。1.2.0-rc01 版包含這些修訂項目

1.2.0-beta01 版本

2024 年 5 月 14 日

發布 androidx.concurrent:concurrent-futures:1.2.0-beta01androidx.concurrent:concurrent-futures-ktx:1.2.0-beta01。1.2.0-beta01 版包含這些修訂版本

1.2.0-alpha03 版本

March 20, 2024

發布 androidx.concurrent:concurrent-futures:1.2.0-alpha03androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha03。1.2.0-alpha03 版包含這些修訂版本

修正錯誤

  • 修正 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-alpha021.2.0-alpha02 版本包含以下修訂項目。

API 變更

  • 新增 SuspendToFutureAdapter 用於撰寫暫停-ListenableFuture橋接 (Ia8a66)

1.2.0-alpha01 版本

2023 年 2 月 22 日

發布 androidx.concurrent:concurrent-futures:1.2.0-alpha01androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha011.2.0-alpha01 版本包含以下修訂項目。

API 變更

  • ResolvableFuture 的方法現可加上是否可為空值註解 (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 推出 Kotlin 擴充功能,可協助您在 ListenableFuture 和 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-alpha011.1.0-alpha01 版本包含這些修訂版本。此為 androidx.concurrent:concurrent-futures-ktx 的第一版本。

新功能

  • 您現在可使用 concurrent-futures-ktx 中提供的 Kotlin 擴充功能,在 ListenableFuture 與 Kotlin 協同程式之間轉換。此構件不是設計用來搭配完整的 Guava 程式庫,而是與 com.google.guava:listenablefuture 搭配使用,這是僅包含 ListenableFuture 的替代用精簡版 Guava。如果使用完整的 Guava 程式庫,請改用 kotlinx.coroutines.kotlinx-coroutines-guava 的正式版 ListenableFuture 擴充功能。

API 相關異動

  • 加入暫停性質的 ListenableFuture.await() 擴充功能,將 ListenableFuture 轉換為 Kotlin 協同程式

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.0 提供 CallbackToFutureAdapterclass,這是一種精簡的公用程式,可根據程式碼納入回呼,並回傳 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 外掛程式 3.4.0) 時,前者的構件可能會造成問題。開發人員如果不仰賴完整 Guava 程式庫,建議改用 androidx.concurrent:concurrent-listenablefuture-callback

1.0.0-beta01 版本

2019 年 5 月 7 日

發布了 androidx.concurrent:concurrent-futures:1.0.0-beta01。您可以前往這裡查看這個版本包含的修訂項目。

API 相關異動

  • 由於 CallbackToFutureAdapter 提供的 API 更安全,ResolvableFutureAbstractResolvableFuture 已在公用 API 中隱藏。

1.0.0-alpha03 版本

2018 年 12 月 17 日

發布了 androidx.concurrent:concurrent-futures 1.0.0-alpha03

新功能

  • 已推出 CallbackToFutureAdapter。此新版 API 更安全,可在 ListenableFuture 中納入以回呼為基礎的 API。建議您使用此 API 取代 ResolvableFuture