搜索
房产
装修
汽车
婚嫁
健康
理财
旅游
美食
跳蚤
二手房
租房
招聘
二手车
教育
茶座
我要买房
买东西
装修家居
交友
职场
生活
网购
亲子
情感
龙城车友
找美食
谈婚论嫁
美女
兴趣
八卦
宠物
手机

RxJava2源码解析

[复制链接]
查看: 90|回复: 0

1万

主题

1万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
32598
发表于 2020-1-14 23:56 | 显示全部楼层 |阅读模式
根柢分解

我们看下RxJava最简单的写法
  1.         Observable.create(new ObservableOnSubscribe() {            @Override            public void subscribe(ObservableEmitter emitter) throws Exception {                emitter.onNext("1");                emitter.onComplete();            }        }).subscribe(new Observer() {            @Override            public void onSubscribe(Disposable d) {                System.out.println("onSubscribe");            }            @Override            public void onNext(String s) {                System.out.println(s);            }            @Override            public void onError(Throwable e) {                System.out.println("onError"+e.getLocalizedMessage());            }            @Override            public void onComplete() {                System.out.println("onComplete");            }        })
复制代码
很简单的3个步伐:

  • 建立 Observable :被观察者
  • 建立 Observer :观察者
  • 经过 subscribe() 方式建立定阅关系
一个个来看
被观察者的建立
  1. public static  Observable create(ObservableOnSubscribe source) {    ObjectHelper.requireNonNull(source, "source is null");    //建立了一个ObservableCreate类,里面包装了我们传入的source参数    return RxJavaPlugins.onAssembly(new ObservableCreate(source));}public final class ObservableCreate extends Observable {    final ObservableOnSubscribe source;    public ObservableCreate(ObservableOnSubscribe source) {        this.source = source;    }
复制代码
观察者的建立

这里很简单,只是经过new方式天生了一个简单的Observer工具。
定阅

定阅是经过subscribe方式来尝试的,我们来跟踪一下,这个方式是属于Observable类的
[code]public final void subscribe(Observer
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright © 2006-2014 全椒百姓网-全椒知名**,发布及时新鲜的全椒新闻资讯 生活信息 版权所有 法律顾问:高律师 客服电话:0791-88289918
技术支持:迪恩网络科技公司  Powered by Discuz! X3.2
快速回复 返回顶部 返回列表