Concurrent

  
Retirez des tâches du thread principal à l'aide de coroutines et exploitez le potentiel de ListenableFuture.
Dernière mise à jour Version stable Version finale Version bêta Version alpha
11 décembre 2024 1.2.0 - - 1.3.0-alpha01

Déclarer des dépendances

Pour ajouter une dépendance sur Futures, vous devez ajouter le dépôt Maven de Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.

Ajoutez les dépendances des artefacts dont vous avez besoin dans le fichier build.gradle de votre application ou module :

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")
}

Pour en savoir plus sur les dépendances, consultez la page Ajouter des dépendances de compilation.

Commentaires

Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.

Signaler un nouveau problème

Pour en savoir plus, consultez les documents sur l'outil Issue Tracker.

Version 1.3

Version 1.3.0-alpha01

11 décembre 2024

Publication d'androidx.concurrent:concurrent-futures:1.3.0-alpha01 et d'androidx.concurrent:concurrent-futures-ktx:1.3.0-alpha01. La version 1.3.0-alpha01 contient ces commits.

Correction de bugs

  • Cette bibliothèque utilise désormais les annotations de nullité JSpecify, qui sont des annotations de type. Les développeurs Kotlin doivent utiliser les arguments de compilation suivants pour appliquer une utilisation correcte: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (I0faf4, b/326456246)

Version 1.2

Version 1.2.0

12 juin 2024

Publication d'androidx.concurrent:concurrent-futures:1.2.0 et d'androidx.concurrent:concurrent-futures-ktx:1.2.0. La version 1.2.0 contient ces commits.

Changements importants depuis la version 1.1.0

Version 1.2.0-rc01

29 mai 2024

Publication d'androidx.concurrent:concurrent-futures:1.2.0-rc01 et d'androidx.concurrent:concurrent-futures-ktx:1.2.0-rc01. La version 1.2.0-rc01 contient ces commits.

Version 1.2.0-beta01

14 mai 2024

Publication d'androidx.concurrent:concurrent-futures:1.2.0-beta01 et d'androidx.concurrent:concurrent-futures-ktx:1.2.0-beta01. La version 1.2.0-beta01 contient ces commits.

Version 1.2.0-alpha03

20 mars 2024

Publication d'androidx.concurrent:concurrent-futures:1.2.0-alpha03 et d'androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha03. La version 1.2.0-alpha03 contient ces commits.

Correction de bugs

  • Correction d'un bug dans la gestion des erreurs lorsqu'une tâche SuspendToFutureAdapter génère une exception. (b/327629504)

Version 1.2.0-alpha02

9 août 2023

Publication d'androidx.concurrent:concurrent-futures:1.2.0-alpha02 et d'androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha02. Liste des commits de la version 1.2.0-alpha02

Modifications apportées à l'API

  • Ajout de SuspendToFutureAdapter pour écrire des ponts suspend-ListenableFuture (Ia8a66)

Version 1.2.0-alpha01

22 février 2023

Publication d'androidx.concurrent:concurrent-futures:1.2.0-alpha01 et d'androidx.concurrent:concurrent-futures-ktx:1.2.0-alpha01. Liste des commits de la version 1.2.0-alpha01

Modifications apportées à l'API

  • ResolvableFuture dispose désormais des annotations de possibilité de valeur nulle appropriées pour ses méthodes. (I2339f, b/236474470)

Version 1.1.0

Version 1.1.0

19 août 2020

Publication d'androidx.concurrent:concurrent-futures:1.1.0 et d'androidx.concurrent:concurrent-futures-ktx:1.1.0 sans modification par rapport à la version 1.1.0-rc01. Liste des commits de la version 1.1.0

Principales modifications depuis la version 1.0.0

  • 1.1.0 incorpore les extensions Kotlin pour permettre la conversion entre ListenableFuture et les coroutines Kotlin, désormais disponibles avec androidx.concurrent:concurrent-futures-ktx:1.1.0. Cet artefact vise à être utilisé avec com.google.guava:listenablefuture, par opposition à la bibliothèque Guava complète. Il s'agit d'une version allégée de Guava ne contenant que ListenableFuture. Pour les utilisateurs de la bibliothèque Guava complète, utilisez plutôt les extensions ListenableFuture officielles de kotlinx.coroutines.kotlinx-coroutines-guava.

Version 1.1.0-rc01

22 juillet 2020

Publication d'androidx.concurrent:concurrent-futures:1.1.0-rc01 et d'androidx.concurrent:concurrent-futures-ktx:1.1.0-rc01 sans modification par rapport à la version 1.1.0-beta01. Liste des commits de la version 1.1.0-rc01

Version 1.1.0-beta01

24 juin 2020

Publication d'androidx.concurrent:concurrent-futures:1.1.0-beta01 et d'androidx.concurrent:concurrent-futures-ktx:1.1.0-beta01 sans modification par rapport à la version 1.1.0-alpha01. Liste des commits de la version 1.1.0-beta01

Version 1.1.0-alpha01

18 décembre 2019

Publication d'androidx.concurrent:concurrent-futures:1.1.0-alpha01 et d'androidx.concurrent:concurrent-futures-ktx:1.1.0-alpha01. Liste des commits de la version 1.1.0-alpha01 (il s'agit de la première version de androidx.concurrent:concurrent-futures-ktx)

Nouvelles fonctionnalités

  • Les extensions Kotlin, qui facilitent la conversion entre ListenableFuture et les coroutines Kotlin, sont désormais disponibles dans concurrent-futures-ktx. Cet artefact vise à être utilisé avec com.google.guava:listenablefuture, par opposition à la bibliothèque Guava complète. Il s'agit d'une version allégée de Guava ne contenant que ListenableFuture. Pour les utilisateurs de la bibliothèque Guava complète, utilisez plutôt les extensions ListenableFuture officielles de kotlinx.coroutines.kotlinx-coroutines-guava.

Modifications apportées à l'API

  • Ajout d'une extension ListenableFuture.await() de suspension qui convertit un élément ListenableFuture en coroutine Kotlin.

Version 1.0.0

Version 1.0.0

9 octobre 2019

Publication d'androidx.concurrent:concurrent-futures:1.0.0. Liste des commits de la version 1.0.0

Fonctionnalités clés de la version 1.0.0

androidx.concurrent:concurrent-futures:1.0.0 fournit la classe CallbackToFutureAdapter, qui est un utilitaire minimaliste permettant d'encapsuler le code basé sur le rappel et de renvoyer les instances de ListenableFuture. Il est utile pour les bibliothèques qui souhaitent exposer des opérations asynchrones dans leurs API Java d'une manière plus élégante que les rappels personnalisés, mais qui ne font pas suffisamment de multithreading pour utiliser une dépendance à la bibliothèque Guava complète ou rx java en raison de problèmes de taille de bibliothèque.

Version 1.0.0-rc01

7 août 2019

Publication d'androidx.concurrent:concurrent-futures:1.0.0-rc01 sans aucune modification par rapport à la version 1.0.0-beta01. Les commits inclus dans cette version sont disponibles sur cette page.

Concurrent-ListenableFuture version 1.0.0-beta01

30 mai 2019

Publication d'androidx.concurrent:concurrent-listenablefuture:1.0.0-beta01 et d'androidx.concurrent:concurrent-listenablefuture-callback:1.0.0-beta01. Les commits inclus dans cette version sont disponibles sur cette page.

Ces bibliothèques fournissent un équivalent autonome à l'interface ListenableFuture de Guava et un adaptateur pour la conversion des rappels.

L'artefact androidx.concurrent:concurrent-futures précédemment publié, qui fournissait un adaptateur similaire et qui comprenait l'artefact com.google.guava:listenablefuture, peut poser problème aux développeurs qui utilisent des chaînes d'outils, telles que le plug-in Android Gradle 3.4.0, avec une correspondance stricte de résolution des dépendances. Nous recommandons aux développeurs qui ne dépendent pas de la bibliothèque Guava complète de passer à androidx.concurrent:concurrent-listenablefuture-callback.

Version 1.0.0-beta01

7 mai 2019

Publication d'androidx.concurrent:concurrent-futures:1.0.0-beta01. Les commits inclus dans cette version sont disponibles sur cette page.

Modifications apportées à l'API

  • ResolvableFuture et AbstractResolvableFuture ont été masqués dans l'API publique au profit de CallbackToFutureAdapter, qui offre une API plus sûre.

Version 1.0.0-alpha03

17 décembre 2018

Publication d'androidx.concurrent:concurrent-futures 1.0.0-alpha03.

Nouvelles fonctionnalités

  • CallbackToFutureAdapter a été ajouté. Il s'agit d'une nouvelle API plus sûre qui permet d'encapsuler une API basée sur les rappels dans ListenableFuture. Préférez cette méthode à ResolvableFuture.