RxJava - Opérateurs connectables
Voici les opérateurs qui contrôlent plus précisément l'abonnement.
N ° Sr. | Opérateur et description |
---|---|
1 | Connect Demandez à un observable connectable d'émettre des éléments à ses abonnés. |
2 | Publish Convertit un observable en observable connectable. |
3 | RefCount Convertit un observable connectable en observable ordinaire. |
4 | Replay Assurez-vous que la même séquence d'éléments émis soit visible par chaque abonné, même après que l'Observable a commencé à émettre des éléments et que les abonnés s'abonnent plus tard. |
Exemple d'opérateur connectable
Créez le programme Java suivant en utilisant n'importe quel éditeur de votre choix dans, par exemple, C: \> RxJava.
ObservableTester.java
import io.reactivex.Observable;
import io.reactivex.observables.ConnectableObservable;
//Using connect operator on a ConnectableObservable
public class ObservableTester {
public static void main(String[] args) {
String[] letters = {"a", "b", "c", "d", "e", "f", "g"};
final StringBuilder result = new StringBuilder();
ConnectableObservable<String> connectable = Observable.fromArray(letters).publish();
connectable.subscribe(letter -> result.append(letter));
System.out.println(result.length());
connectable.connect();
System.out.println(result.length());
System.out.println(result);
}
}
Vérifiez le résultat
Compilez la classe en utilisant javac compilateur comme suit -
C:\RxJava>javac ObservableTester.java
Exécutez maintenant l'ObservableTester comme suit -
C:\RxJava>java ObservableTester
Il devrait produire la sortie suivante -
0
7
abcdefg