Size: a a a

StartAndroid Ru RxJava

2020 December 13

l

lenar in StartAndroid Ru RxJava
Sergey
Привет еще раз!
Подскажите,  пожалуйста, почему в такой цепочке:

firstFunct(...)
 .compose(secondFunct(...))
 .toObservable()
 ....

secondFunction выполняется первой,  а firstFunt - второй??? Что может быть причиной?

fistFunct(...) - это Single.fromCallable(...)

Для меня порядок вызова верный, но не понимаю, почему в такой последовательности идут((
источник

S

Sergey in StartAndroid Ru RxJava
Спасибо!! Проясняет!!
источник

S

Sergey in StartAndroid Ru RxJava
источник

s

someone_guy in StartAndroid Ru RxJava
Нуркевич?)
источник

S

Sergey in StartAndroid Ru RxJava
Правильно же понял, что по сути compose выполняется в момент создания observable, а не в момент вызова подписки, когда до него доходит очередь?)
источник

l

lenar in StartAndroid Ru RxJava
Sergey
Правильно же понял, что по сути compose выполняется в момент создания observable, а не в момент вызова подписки, когда до него доходит очередь?)
формирование функции для композа. сама функция уже во время подписки (работы стрима)
источник

l

lenar in StartAndroid Ru RxJava
someone_guy
Нуркевич?)
да
источник

S

Sergey in StartAndroid Ru RxJava
lenar
формирование функции для композа. сама функция уже во время подписки (работы стрима)
Т.е. функция формируется в compose, а в момент подписки, поэтому первой выстреливает secondFunct, а потом уже все идёт по порядку и выполняется firstFunct?
источник

l

lenar in StartAndroid Ru RxJava
Sergey
Т.е. функция формируется в compose, а в момент подписки, поэтому первой выстреливает secondFunct, а потом уже все идёт по порядку и выполняется firstFunct?
да. проще всего накидать пример с кучей sout и увидеть какие части когда выполняются
источник

l

lenar in StartAndroid Ru RxJava
Sergey
Т.е. функция формируется в compose, а в момент подписки, поэтому первой выстреливает secondFunct, а потом уже все идёт по порядку и выполняется firstFunct?
     public static void main(String[] args) throws InterruptedException {
        System.out.println("main.1");
        Flowable<Integer> obs = Flowable.just(1, 2);
        System.out.println("main.2");
        Flowable<String> obs2 =
                obs
                        .doOnNext(i -> System.out.println("obs.1 : " + i))
                        .compose(compose())
                        .doOnNext(i -> System.out.println("obs.2 : " + i));
        System.out.println("main.3");
        obs2.subscribe(i -> System.out.println("obs.subscribe"));
        System.out.println("main.4");
    }

    private static FlowableTransformer<Integer, String> compose() {
        System.out.println("func compose.1");
        FlowableTransformer<Integer, String> transformer = obsInt ->
                obsInt
                        .doOnNext(i -> System.out.println("compose.1 : " + i))
                        .map(i -> "s" + i)
                        .doOnNext(i -> System.out.println("compose.2 : " + i));
        System.out.println("func compose.2");
        return transformer;
    }
источник

S

Sergey in StartAndroid Ru RxJava
Спасибо за разъяснение 👍👍👍☺️
источник
2020 December 16

VD

Victor Dobrov in StartAndroid Ru RxJava
Добрый день  ребят , можете мне объяснить как понимать  горячие и холодные источники и  как их воспринимать если используется subject??
 имею ввиду как воспринимать для каждого вида subject??
источник

s

someone_guy in StartAndroid Ru RxJava
Victor Dobrov
Добрый день  ребят , можете мне объяснить как понимать  горячие и холодные источники и  как их воспринимать если используется subject??
 имею ввиду как воспринимать для каждого вида subject??
Горячий источник эмитит данные всегда, а холодный только  после того как на него подпишутся.

По сабжектам, там несколько вариаций этого поведения в стиле: при подписке слушатель получает либо последний сохранённый эмит, либо несколько последних сохранённых, либо не получает. Погугли, не медиуиме статья была про них хорошая
источник

VD

Victor Dobrov in StartAndroid Ru RxJava
благодарю!!!
источник

VD

Victor Dobrov in StartAndroid Ru RxJava
Ребят а можете простыми словами объяснить разницу между  map,flatmap,switchmap,concatmap???
источник

VD

Victor Dobrov in StartAndroid Ru RxJava
Заранее благодарю!
источник
2020 December 18

S

Shams in StartAndroid Ru RxJava
Всем привет!
У меня есть метод encodeImage() и я должен выполнить этот метод на computation потоке. После encode я должен отправить запрос на сервер.
Метод отлично работает на computation потоке но потом не выполняется andThen оператор. Не отправляется запрос на сервер.
Кто нибудь сталкивался с таким? Не могу понять в чем именно ошибка.
источник

VD

Victor Dobrov in StartAndroid Ru RxJava
ребят посдкажите пожалуйста,  в этом примере
ответ  будет
1 2 3 4 6 5 8 9???
источник

АК

Артем Кулик... in StartAndroid Ru RxJava
148269
источник

A

Alohagoha in StartAndroid Ru RxJava
35
источник