Reactive Extensions (Rx) в Scala - выполнить метод через заданный интервал
Поскольку я довольно новичок в Reactive Extensions, мне было интересно узнать следующее.
Используя Rx в Scala, я хочу иметь возможность вызывать метод, который извлекает контент из API каждую секунду.
До сих пор я смотрел на операторы создания, используемые в Rx, такие как Interval, Timer и так далее. Но, к сожалению, я не могу найти правильное решение.
Кто-нибудь имеет некоторый опыт с этим, и желательно примеры кода, чтобы поделиться?
Заранее спасибо!
1 ответ
Использование RxJava:
Observable.interval(1, TimeUnit.SECONDS)
.map(interval -> getSuffFromApi()) //Upto here, we have an observable the spits out the data from the API every second
.subscribe(response-> System.out.println(response)); //Now we just subscribe to it
Или же:
Observable.interval(1, TimeUnit.SECONDS) //Emit every second
.subscribe(interval ->System.out.println(getSuffFromApi())) //onNext - get the data from the API and print it