通过两个线索来理解rxjava原理
线索一:订阅流程 subscribe
线索二:事件执行流程 以onNext为例
示例代码:
Observable.create(
new ObservableOnSubscribe<String>() {
@Override
public void subscribe(ObservableEmitter<String> emitter) throws Exception {
emitter.onNext("rxjava");
}
}
)
.map(new Function<String, String>() {
@Override
public String apply(String s) throws Exception {
return s + " map1 ";
}
})
.map(new Function<String, String>() {
@Override
public String apply(String s) throws Exception {
return s + " map2 ";
}
})
.subscribe(
new Observer<String>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(String s) {
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
});