并发

  
使用协程将任务从主线程移开,并利用 ListenableFuture。
最新更新 稳定版 候选版本 Beta 版本 Alpha 版本
2024 年 6 月 12 日 1.2.0 - - -

声明依赖项

要添加对 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。如果您发现新的问题或有改进此库的想法,请告诉我们。在创建新问题之前,请查看此库中现有问题。您可以通过点击星形按钮为现有问题添加您的投票。

创建新的问题

有关更多信息,请参阅问题跟踪器文档

版本 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

2024年3月20日

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-alpha02 已发布。版本 1.2.0-alpha02 包含这些提交。

API 更改

  • 添加了 SuspendToFutureAdapter 用于编写 suspend-ListenableFuture 桥接 (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 包含这些提交。

API 更改

  • ResolvableFuture 现在在其方法上具有正确的空值注释。(I2339f, b/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 使用。此工件旨在与 com.google.guava:listenablefuture 一起使用,而不是与完整的 Guava 库一起使用,它是 Guava 的轻量级替代品,仅包含 ListenableFuture。对于完整 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 的第一个版本。

新功能

  • Kotlin 扩展现在可在 concurrent-futures-ktx 中使用,以帮助在 ListenableFuture 和 Kotlin 协程之间进行转换。此工件旨在与 com.google.guava:listenablefuture 一起使用,而不是与完整的 Guava 库一起使用,它是 Guava 的轻量级替代品,仅包含 ListenableFuture。对于完整 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 提供了 CallbackToFutureAdapter 类,这是一个极简的实用程序,允许包装基于回调的代码并返回 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 已发布。此版本中包含的提交可以在 此处 找到。

API 更改

  • ResolvableFutureAbstractResolvableFuture 已从公共 API 中隐藏,以支持提供更安全 API 的 CallbackToFutureAdapter

版本 1.0.0-alpha03

2018年12月17日

androidx.concurrent:concurrent-futures 1.0.0-alpha03 已发布。

新功能

  • CallbackToFutureAdapter 已引入。这是一个新的、更安全的 API,用于将基于回调的 API 包装到 ListenableFuture 中。建议优先使用它而不是使用 ResolvableFuture