RxJava2配置及使用详解
2019年12月01日
作者:佚名
RxJava2.0是一个非常棒的流式编程,采用的观察者模式思想,事件的产生者产生事间之后发送给绑定的接受者,接受顺序与发送顺序一致.
依赖:
compile 'io.reactivex.rxjava2:rxjava:2.0.1' compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
简单使用:
//观察者模式,这里产生事件,事件产生后发送给接受者,但是一定要记得将事件的产生者和接收者捆绑在一起,否则会出现错误 Observable.create(new ObservableOnSubscribe<String>() { @Override public void subscribe(ObservableEmitter<String> e) throws Exception { //这里调用的方法会在产生事件之后会发送给接收者,接收者对应方法会收到 e.onNext("hahaha"); e.onError(new Exception("wulala")); e.onComplete(); }/*-- }).subscribe(new Observer<String>() { //接受者,根据事件产生者产生的事件调用不同方法 @Override public void onSubscribe(Disposable d) { Log.e(TAG,"onSubscribe: "); } @Override public void onNext(String value) { Log.e(TAG,"onNext: " + value); } @Override public void onError(Throwable e) { Log.e(TAG,"onError: ",e); } @Override public void onComplete() { Log.e(TAG,"onComplete: "); } });
我们来用图解一下这其中发生了什么事:
可以看到我们只加了两行代码,就实现了效果,还有比这个更优秀,更简单的么?
注意事项:
subscribeOn(),只有在第一次调用的时候生效,之后不管调用多少次,只会以第一次为准.
observeOn(),可以被调用多次,每次调用都会更改线程.
RxJava线程池中的几个线程选项
- - Schedulers.io() io操作的线程,通常io操作,如文件读写.
- - Schedulers.computation() 计算线程,适合高计算,数据量高的操作.
- - Schedulers.newThread() 创建一个新线程,适合子线程操作.
- - AndroidSchedulers.mainThread() Android的主线程,主线程
本文介绍简单使用,以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
以上是来客网为你收集整理的RxJava2配置及使用详解全部内容,希望文章能够帮你解决RxJava2配置及使用详解所遇到的程序开发问题。
如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。