#java #rxjava
Суть проблемы такова: у меня есть Observable и Subscriber. Observable я пытаюсь запустить в io() потоке, так как он работает с файлами (не буду показывать код, он довольно большой, но не имеет значения), однако он ничего не делает: ObservablecreatingObservable = getCreatingObservable(image); Subscriber creatingSubscriber = getCreatingSubscriber(); creatingObservable .subscribeOn(Schedulers.io()) .subscribe(creatingSubscriber); Если запускать код без subscribeOn - все прекрасно работает. Так в чем же проблема и как ее исправить? P.S. У меня еще System.out.println() не работает. Проблема распространяется на все потоки Scheduler'a.
Ответы
Ответ 1
Проблема была в том, что главный поток не дожидался окончания окончания выполнения RxJava'вского потока. В результате, RxJava даже не успевал "пискнуть" - от сюда никаких сообщений из System.out.println() и работы с файлами. Решение подсказали тут - https://stackoverflow.com/questions/37993371/rxjava-doesnt-work-in-scheduler-io-thread
Комментариев нет:
Отправить комментарий