Concurrent

使用协程将任务移出主线程,并充分利用 ListenableFuture。
最近更新时间 当前稳定版 下一候选版本 Beta 版 Alpha 版
2020 年 6 月 24 日 1.0.0 - 1.1.0-beta01 -

声明依赖项

要添加 Futures 的依赖项,您必须将 Google Maven 代码库添加到项目中。如需了解详情,请参阅 Google 的 Maven 代码库

在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

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

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

如需详细了解依赖项,请参阅添加构建依赖项

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库的改进有自己的见解,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

版本 1.1.0

版本 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 的第一个版本。

新功能

  • concurrent-futures-ktx 中现在提供 Kotlin 扩展,以帮助在 ListenableFuture 和 Kotlin 协程之间进行转换。此工件不与完整版 Guava 库配合使用,而是与 com.google.guava:listenablefuture 配合使用,后者是 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 接口等效的独立工件,以及一个用于转换回调的适配器。

如果开发者使用的是依赖项解析匹配较为严格的工具链,例如 Android Gradle 插件 3.4.0,那么先前发布的 androidx.concurrent:concurrent-futures 工件(提供了一个类似的适配器且包含 com.google.guava:listenablefuture 工件)可能会给他们带来问题。建议不依赖完整版 Guava 库的开发者改用 androidx.concurrent:concurrent-listenablefuture-callback

版本 1.0.0-beta01

2019 年 5 月 7 日

发布了 androidx.concurrent:concurrent-futures:1.0.0-beta01。点击此处可查看此版本中包含的提交内容。

API 变更

  • ResolvableFutureAbstractResolvableFuture 已从公共 API 隐藏,取而代之的是 CallbackToFutureAdapter,它提供更安全的 API。

版本 1.0.0-alpha03

2018 年 12 月 17 日

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

新功能

  • 引入了 CallbackToFutureAdapter。它是一个更安全的新 API,可将回调驱动型 API 封装到 ListenableFuture 中。建议使用该 API,而不要使用 ResolvableFuture