RxJAVA-Single

网友投稿 220 2022-11-24

RxJAVA-Single

Single用于只发射一个数据,并且只有一个订阅者,订阅者一共三个方法。 interface SingleObserver { void onSubscribe(Disposable d); void onSuccess(T value); void onError(Throwable error); } Single只发射一个元素,所以没有complete 方法,不像Observable或者Flowable,数据发射完成之后,需要调用complete告诉下游已经完成。 package com.netty.demo.vertx; import io.reactivex.*; import io.reactivex.disposables.Disposable; import io.reactivex.schedulers.Schedulers; import lombok.extern.slf4j.Slf4j; @Slf4j public class RxJavaTest { public static void main(String[] args) throws InterruptedException { Single.create(new SingleOnSubscribe() { @Override public void subscribe(SingleEmitter emitter) { //发送成功事件或者发送异常事件(并且事件只能发送一次) emitter.onSuccess("success"); //emitter.onError(new RuntimeException("err")); } }).observeOn(Schedulers.newThread()) .subscribeOn(Schedulers.io()) .subscribe(new SingleObserver(){ @Override public void onSubscribe(Disposable d) { log.info("onSubscribe"); } @Override public void onSuccess(String o) { log.info("onSuccess:" + o); } @Override public void onError(Throwable e) { log.error("onError:" + e); } }); Thread.sleep(300000000); } }

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:15 DATANODE的工作机制
下一篇:Spring Boot 中嵌入式 Servlet 容器自动配置原理解析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~