概述
1 什么是flowable
flowable 是一个java编写的轻量级业务流程引擎。
2 当发送数据的速度明显快于接受数据处理数据的速度时,可能产生背压式的内存溢出。
flowable 可以解决这一背压问题。
public void demo2() {
Flowable
.create(new FlowableOnSubscribe<Integer>() {
@Override
public void subscribe(FlowableEmitter<Integer> e) throws Exception {
System.out.println("发射----> 1");
e.onNext(1);
System.out.println("发射----> 2");
e.onNext(2);
System.out.println("发射----> 3");
e.onNext(3);
System.out.println("发射----> 完成");
e.onComplete();
}
}, BackpressureStrategy.BUFFER) //create方法中多了一个BackpressureStrategy类型的参数
.subscribeOn(Schedulers.newThread())//为上下游分别指定各自的线程
.observeOn(Schedulers.newThread())
.subscribe(new Subscriber<Integer>() {
@Override
public void onSubscribe(Subscription s) { //onSubscribe回调的参数不是Disposable而是Subscription
s.request(Long.MAX_VALUE); //注意此处,暂时先这么设置
}
@Override
public void onNext(Integer integer) {
System.out.println("接收----> " + integer);
}
@Override
public void onError(Throwable t) {
}
@Override
public void onComplete() {
System.out.println("接收----> 完成");
}
});
}
3 flowable 中,当我们调用subscribe 方法,也就是观察者和被观察者交互时,就会调用subscribeActual方法,设置发射器的类型。并调用Subscriber 的onSubscribe方法返回一个发射器。
最后
以上就是动人裙子为你收集整理的Flowable的全部内容,希望文章能够帮你解决Flowable所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复