Size: a a a

ReactiveX - русскоговорящее сообщество

2020 July 23

PE

Pavel Erokhin in ReactiveX - русскоговорящее сообщество
Хах, ну это отличное решение проблемы)))
Но все же, я хочу что бы если долго данные берет с сервиса, то показать другие UI элементы о том что вот нихуя не вышло
источник

PE

Pavel Erokhin in ReactiveX - русскоговорящее сообщество
или таймаут в rx не для этого предназначен, для чего я хочу?
источник

AD

Aleksey D. in ReactiveX - русскоговорящее сообщество
Pavel Erokhin
Хах, ну это отличное решение проблемы)))
Но все же, я хочу что бы если долго данные берет с сервиса, то показать другие UI элементы о том что вот нихуя не вышло
если очень быстро - можно таймаут ближе к subscribe перенести
источник

AD

Aleksey D. in ReactiveX - русскоговорящее сообщество
Pavel Erokhin
Хах, ну это отличное решение проблемы)))
Но все же, я хочу что бы если долго данные берет с сервиса, то показать другие UI элементы о том что вот нихуя не вышло
ну вообще так работает - поймал в subscribe ошибку, если это был таймаут - показал на UI нужное
источник

AD

Aleksey D. in ReactiveX - русскоговорящее сообщество
цепочка из сообщения выше вполне позволяет делать описанную задачу)
источник

PE

Pavel Erokhin in ReactiveX - русскоговорящее сообщество
Aleksey D.
ну вообще так работает - поймал в subscribe ошибку, если это был таймаут - показал на UI нужное
С этим проблем и нет, все выводит замечательно и в doOnError, я к тому, что после такого прикола с таймаутом, я второй раз эмиттить не могу
источник

AD

Aleksey D. in ReactiveX - русскоговорящее сообщество
Pavel Erokhin
С этим проблем и нет, все выводит замечательно и в doOnError, я к тому, что после такого прикола с таймаутом, я второй раз эмиттить не могу
да, с таким приколом цепочка умирает)
источник

AD

Aleksey D. in ReactiveX - русскоговорящее сообщество
это так Rx устроен
источник

PE

Pavel Erokhin in ReactiveX - русскоговорящее сообщество
источник

AD

Aleksey D. in ReactiveX - русскоговорящее сообщество
но, кажется, умрет только то, что ниже timeout написано
источник

PE

Pavel Erokhin in ReactiveX - русскоговорящее сообщество
Вся обсервабля видимо отписывается, я хз как это проверить, но на эмитт zero реакции
источник

PE

Pavel Erokhin in ReactiveX - русскоговорящее сообщество
Второй раз заюзать видимо не выйдет
источник

AD

Aleksey D. in ReactiveX - русскоговорящее сообщество
Pavel Erokhin
Вся обсервабля видимо отписывается, я хз как это проверить, но на эмитт zero реакции
val observable = //
observable.subscribe()
observable.timeout().subscribe()
источник

L

LGFox in ReactiveX - русскоговорящее сообщество
iamthevoid
Есть и Completeable и Single и  Maybe. Да и Flowable с Observable после onComplete отписываются
Спасибо, @iamthevoid, @ga11ean ! 👍
источник
2020 July 28

MF

Misha Feyerverk in ReactiveX - русскоговорящее сообщество
Господа реактивщики! Подскажите пжлст, если ли какой-то дефолтный оператор, чтобы асинхронная операция (http-запрос) выполнялась:
1. Если по длительности меньше 1с, то 1с.
2. Если по длительности больше 1с, то соответствующее время.
источник

i

iamthevoid in ReactiveX - русскоговорящее сообщество
Misha Feyerverk
Господа реактивщики! Подскажите пжлст, если ли какой-то дефолтный оператор, чтобы асинхронная операция (http-запрос) выполнялась:
1. Если по длительности меньше 1с, то 1с.
2. Если по длительности больше 1с, то соответствующее время.
debounce?
источник

i

iamthevoid in ReactiveX - русскоговорящее сообщество
Или я неправильно понял вопрос?
источник

MF

Misha Feyerverk in ReactiveX - русскоговорящее сообщество
iamthevoid
debounce?
debounce немного не то
источник

i

iamthevoid in ReactiveX - русскоговорящее сообщество
Misha Feyerverk
debounce немного не то
Я бы зазиповал запрос с Single.delay, и потом мап на результат запроса
источник

PE

Pavel Erokhin in ReactiveX - русскоговорящее сообщество
Misha Feyerverk
Господа реактивщики! Подскажите пжлст, если ли какой-то дефолтный оператор, чтобы асинхронная операция (http-запрос) выполнялась:
1. Если по длительности меньше 1с, то 1с.
2. Если по длительности больше 1с, то соответствующее время.
А в чем смысл, можно сократить твою задачу до: выполнять задачу не менее 1 секунды, даже если завершается раньше
источник