在Rxjava 中使用Schedulers 对线程进行切换。
其中需要使用到两个方法 observeOn 、 subscribeOn
1:subscribeOn:当我们创建好 观察者和被观察者后,调用 subscribe 订阅事件时,整个事件开始执行.
默认线程为执行订阅的当前线程,而subscribeOn是指定订阅事件所在运行线程。
2:observeOn :设置回调事件运行所在线程,可以在多个回调事件设置不同线程,在回调事件前调用即可。
如果不设置,默认为subscribe所使用的线程
测试Code:
Observable.create(new Observable.OnSubscribe<String>() {
@Override
public void call(Subscriber<? super String> subscriber) {
printThread("OnSubscribe--call");
subscriber.onNext("");
}
}).subscribeOn(Schedulers.io())
.observeOn(Schedulers.computation())
.map(new Func1<String, Integer>() {
@Override
public Integer call(Stri