我一直在尋找新的RX的Java 2,我不是很確定我理解的backpressure
了的想法...可觀察VS可流動rxJava2
我知道,我們有Observable
不具有backpressure
支持和Flowable
有它。
因此,基於例如,可以說我有flowable
與interval
:
Flowable.interval(1, TimeUnit.MILLISECONDS, Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<Long>() {
@Override
public void accept(Long aLong) throws Exception {
// do smth
}
});
這是怎麼回事後,約128價值崩潰,並且那是很明顯的,我比消費項目越來越慢。
但是,我們有相同帶Observable
Observable.interval(1, TimeUnit.MILLISECONDS, Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Consumer<Long>() {
@Override
public void accept(Long aLong) throws Exception {
// do smth
}
});
這不會在所有的崩潰,甚至當我穿上消耗它仍然有效一些延遲。爲了使Flowable
工作可以說我把onBackpressureDrop
運算符,崩潰消失了,但並不是所有的值都發射。
因此,我目前找不到答案的基本問題是爲什麼我應該關心backpressure
當我可以使用普通Observable
仍然接收所有值而不管理buffer
?或者從另一方面來看,backpressure
有利於管理和處理消費?
由於這已經出現[在另一個問題](http://stackoverflow.com/questions/42525623/rxjava-2-x-should-i-use-flowable-or-single -completable) - 當它們在語義上合適時,可以總是*使用'Maybe','Single'和'Completable'來代替'Flowable',這是否正確? –