RxJava - Reactive Extensions for the JVM - biblioteka do tworzenia programów asynchronicznych i opartych na zdarzeniach przy użyciu obserwowalnych sekwencji dla maszyny wirtualnej Java.
Pracuję nad siecią dla mojej aplikacji. Postanowiłem więc wypróbować Square's Retrofit . Widzę, że obsługują prosteCallback @GET("/user/{id}/photo") void getUserPhoto(@Path("id") int id, Callback<Photo> cb); i RxJava Observable @GET("/user/{id}/photo") Observable<Photo> getUserPhoto(@Path("id") int id); Oba wyglądają dość podobnie na pierwszy rzut oka, ale kiedy dochodzi do implementacji, robi się interesująco ... Podczas gdy …
W RxJava dostępnych jest 5 różnych harmonogramów : natychmiastowe () : Tworzy i zwraca program planujący, który natychmiast wykonuje pracę w bieżącym wątku. trampoline () : Tworzy i zwraca program planujący, który kolejkuje pracę nad bieżącym wątkiem do wykonania po zakończeniu bieżącej pracy. newThread () : Tworzy i zwraca harmonogram, …
Chciałbym poznać różnicę między CompletableFuture, Futurea Observable RxJava. Wiem, że wszystko jest asynchroniczne, ale Future.get() blokuje wątek CompletableFuture podaje metody wywołania zwrotnego RxJava Observable--- podobnie jak w CompletableFutureprzypadku innych korzyści (nie jestem pewien) Na przykład: jeśli klient musi wykonać wiele wywołań usług, a kiedy korzystamy Futures(Java) Future.get()będzie wykonywany sekwencyjnie ... …
Czy strumienie Java 8 są podobne do obserwacji RxJava? Definicja strumienia Java 8: Klasy w nowym java.util.streampakiecie udostępniają interfejs API Stream do obsługi operacji w stylu funkcjonalnym na strumieniach elementów.
Patrzyłem na nową rx java 2 i nie jestem do końca pewien, czy rozumiem już ideę backpressure... Zdaję sobie sprawę, że my Observablenie mamy backpressurewsparcia i Flowableto je ma. Więc na podstawie przykładu powiedzmy, że mam flowablez interval: Flowable.interval(1, TimeUnit.MILLISECONDS, Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Consumer<Long>() { @Override public void accept(Long aLong) …
Czy ktoś mógłby wyjaśnić różnicę między Observable, Completable i Single w RxJava z jasnymi przykładami? W którym scenariuszu używamy jednego nad innymi?
Próbuję uaktualnić do wersji Retrofit 2.0 i dodać RxJava do mojego projektu na Androida. Wykonuję wywołanie API i chcę pobrać kod błędu w przypadku odpowiedzi błędu z serwera. Observable<MyResponseObject> apiCall(@Body body); A w wywołaniu RxJava: myRetrofitObject.apiCall(body).subscribe(new Subscriber<MyResponseObject>() { @Override public void onCompleted() { } @Override public void onError(Throwable e) { …
Zamierzam wysłać prostą metodę get na mój serwer (jest to aplikacja Rails) i uzyskać wynik za pomocą RxJava i Retrofit. To, co zrobiłem, to: Mój interfejs: public interface ApiCall { String SERVICE_ENDPOINT = "https://198.50.214.15"; @GET("/api/post") io.reactivex.Observable<Post> getPost(); } Mój model to: public class Post { @SerializedName("id") private String id; @SerializedName("body") …
Używam rxjava w mojej aplikacji na Androida do asynchronicznej obsługi żądań sieciowych. Teraz chciałbym ponowić nieudane żądanie sieciowe dopiero po upływie określonego czasu. Czy istnieje sposób użycia retry () na Observable, ale ponowna próba tylko po pewnym opóźnieniu? Czy istnieje sposób, aby powiadomić Observable, że jest obecnie ponawiany (w przeciwieństwie …
TL; DR Jak przekonwertować Task.whenAll(List<Task>)na RxJava? Mój istniejący kod używa Bolts do tworzenia listy zadań asynchronicznych i czeka, aż wszystkie te zadania zostaną zakończone, zanim wykonają inne kroki. Zasadniczo tworzy List<Task>i zwraca pojedynczy znak, Taskktóry jest oznaczony jako zakończony, gdy wszystkie zadania na liście zostaną ukończone, jak na przykładzie w …
Próbuję rozszyfrować następującą funkcję: Subscription getCar(id, Observer<Car> observer) { return getCarDetails(id, new Observer<CarDetails> { @Override onNext(CarDetails details) { observer.onNext(details.getCar()); } }); } Mam dobre wprowadzenie do rxjavy z http://blog.danlew.net/2014/09/15/grokking-rxjava-part-1/, ale wspomniałem tylko na marginesie o Observer, mówiąc, że będziesz używać subskrybenta przez większość czas do pozycji konsumenckich wyemitowanych z Obserwowalnego. …
Jakie są korzyści z używania w Schedulers.newThread()porównaniu Schedulers.io()z Retrofitżądaniami sieciowymi. Widziałem wiele przykładów, które używają io(), ale chcę zrozumieć, dlaczego. Przykładowa sytuacja: observable.onErrorResumeNext(refreshTokenAndRetry(observable)) .subscribeOn(Schedulers.newThread()) .observeOn(AndroidSchedulers.mainThread())... vs observable.onErrorResumeNext(refreshTokenAndRetry(observable)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread())... Jednym z powodów, które widziałem, jest - newThread()tworzy nowy wątek dla każdej jednostki pracy. io()użyje puli wątków Ale jaki jest wpływ …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.