SubmissionPublisher.Offer Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
| Nom | Description |
|---|---|
| Offer(Object, IBiPredicate) |
Publie l’élément donné, le cas échéant, sur chaque abonné actuel en appelant de manière asynchrone sa |
| Offer(Object, Int64, TimeUnit, IBiPredicate) |
Publie l’élément donné, si possible, sur chaque abonné actuel en appelant de manière asynchrone sa |
Offer(Object, IBiPredicate)
Publie l’élément donné, le cas échéant, sur chaque abonné actuel en appelant de manière asynchrone sa Flow.Subscriber#onNext(Object) onNext méthode.
[Android.Runtime.Register("offer", "(Ljava/lang/Object;Ljava/util/function/BiPredicate;)I", "GetOffer_Ljava_lang_Object_Ljava_util_function_BiPredicate_Handler", ApiSince=33)]
public virtual int Offer(Java.Lang.Object? item, Java.Util.Functions.IBiPredicate? onDrop);
[<Android.Runtime.Register("offer", "(Ljava/lang/Object;Ljava/util/function/BiPredicate;)I", "GetOffer_Ljava_lang_Object_Ljava_util_function_BiPredicate_Handler", ApiSince=33)>]
abstract member Offer : Java.Lang.Object * Java.Util.Functions.IBiPredicate -> int
override this.Offer : Java.Lang.Object * Java.Util.Functions.IBiPredicate -> int
Paramètres
- item
- Object
élément (non null) à publier
- onDrop
- IBiPredicate
si la valeur n’est pas null, le gestionnaire appelé lors d’une suppression vers un abonné, avec des arguments de l’abonné et de l’élément ; si elle retourne la valeur true, une offre est re-tentée (une seule fois)
Retours
si négatif, le nombre (négatif) de gouttes ; sinon, une estimation du décalage maximal
- Attributs
Remarques
Publie l’élément donné, le cas échéant, sur chaque abonné actuel en appelant de manière asynchrone sa Flow.Subscriber#onNext(Object) onNext méthode. L’élément peut être supprimé par un ou plusieurs abonnés si les limites de ressources sont dépassées, auquel cas le gestionnaire donné (s’il n’est pas null) est appelé, et s’il retourne true, retenté une seule fois. D’autres appels aux méthodes de cette classe par d’autres threads sont bloqués pendant l’appel du gestionnaire. Sauf si la récupération est assurée, les options sont généralement limitées à la journalisation de l’erreur et/ou à l’émission d’un Flow.Subscriber#onError(Throwable) onError signal à l’abonné.
Cette méthode retourne un indicateur d’état : si elle est négative, elle représente le nombre (négatif) de baisses (échec de tentatives d’émission de l’élément à un abonné). Sinon, il s’agit d’une estimation du décalage maximal (nombre d’éléments soumis mais pas encore consommés) parmi tous les abonnés actuels. Cette valeur est au moins une (compte pour cet élément soumis) s’il existe des abonnés, sinon zéro.
Si l’exécuteur de ce serveur de publication lève une exception RejectedExecutionException (ou toute autre exception runtimeException ou erreur) lors d’une tentative d’avertir de manière asynchrone les abonnés, ou si le gestionnaire de suppression lève une exception lors du traitement d’un élément supprimé, cette exception est rethrown.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.
S’applique à
Offer(Object, Int64, TimeUnit, IBiPredicate)
Publie l’élément donné, si possible, sur chaque abonné actuel en appelant de manière asynchrone sa Flow.Subscriber#onNext(Object) onNext méthode, en bloquant pendant que les ressources d’un abonnement ne sont pas disponibles, jusqu’au délai d’attente spécifié ou jusqu’à ce que le thread d’appelant soit interrompu, à quel point le gestionnaire donné (si non null) est appelé, et s’il retourne la valeur true, retenté une fois.
[Android.Runtime.Register("offer", "(Ljava/lang/Object;JLjava/util/concurrent/TimeUnit;Ljava/util/function/BiPredicate;)I", "GetOffer_Ljava_lang_Object_JLjava_util_concurrent_TimeUnit_Ljava_util_function_BiPredicate_Handler", ApiSince=33)]
public virtual int Offer(Java.Lang.Object? item, long timeout, Java.Util.Concurrent.TimeUnit? unit, Java.Util.Functions.IBiPredicate? onDrop);
[<Android.Runtime.Register("offer", "(Ljava/lang/Object;JLjava/util/concurrent/TimeUnit;Ljava/util/function/BiPredicate;)I", "GetOffer_Ljava_lang_Object_JLjava_util_concurrent_TimeUnit_Ljava_util_function_BiPredicate_Handler", ApiSince=33)>]
abstract member Offer : Java.Lang.Object * int64 * Java.Util.Concurrent.TimeUnit * Java.Util.Functions.IBiPredicate -> int
override this.Offer : Java.Lang.Object * int64 * Java.Util.Concurrent.TimeUnit * Java.Util.Functions.IBiPredicate -> int
Paramètres
- item
- Object
élément (non null) à publier
- timeout
- Int64
durée d’attente des ressources pour n’importe quel abonné avant de renoncer, en unités de unit
- unit
- TimeUnit
déterminer TimeUnit comment interpréter le timeout paramètre
- onDrop
- IBiPredicate
si la valeur n’est pas null, le gestionnaire appelé lors d’une suppression vers un abonné, avec des arguments de l’abonné et de l’élément ; si elle retourne la valeur true, une offre est re-tentée (une seule fois)
Retours
si négatif, le nombre (négatif) de gouttes ; sinon, une estimation du décalage maximal
- Attributs
Remarques
Publie l’élément donné, si possible, sur chaque abonné actuel en appelant de manière asynchrone sa Flow.Subscriber#onNext(Object) onNext méthode, en bloquant pendant que les ressources d’un abonnement ne sont pas disponibles, jusqu’au délai d’attente spécifié ou jusqu’à ce que le thread d’appelant soit interrompu, à quel point le gestionnaire donné (si non null) est appelé, et s’il retourne la valeur true, retenté une fois. (Le gestionnaire de suppression peut distinguer les délais d’attente des interruptions en vérifiant si le thread actuel est interrompu.) D’autres appels aux méthodes de cette classe par d’autres threads sont bloqués pendant l’appel du gestionnaire. Sauf si la récupération est assurée, les options sont généralement limitées à la journalisation de l’erreur et/ou à l’émission d’un Flow.Subscriber#onError(Throwable) onError signal à l’abonné.
Cette méthode retourne un indicateur d’état : si elle est négative, elle représente le nombre (négatif) de baisses (échec de tentatives d’émission de l’élément à un abonné). Sinon, il s’agit d’une estimation du décalage maximal (nombre d’éléments soumis mais pas encore consommés) parmi tous les abonnés actuels. Cette valeur est au moins une (compte pour cet élément soumis) s’il existe des abonnés, sinon zéro.
Si l’exécuteur de ce serveur de publication lève une exception RejectedExecutionException (ou toute autre exception runtimeException ou erreur) lors d’une tentative d’avertir de manière asynchrone les abonnés, ou si le gestionnaire de suppression lève une exception lors du traitement d’un élément supprimé, cette exception est rethrown.
Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.