RxJava - Observable的工作原理



可观察对象 (Observables) 代表数据源,而观察者 (订阅者,Observers/Subscribers) 则监听它们。简而言之,可观察对象发出项目,然后订阅者消费这些项目。

可观察对象 (Observable)

  • 可观察对象在订阅者开始监听时提供数据。

  • 可观察对象可以发出任意数量的项目。

  • 可观察对象也可以只发出完成信号,而没有任何项目。

  • 可观察对象可以成功终止。

  • 可观察对象可能永远不会终止。例如,按钮可以被点击任意多次。

  • 可观察对象可能在任何时候抛出错误。

订阅者 (Subscriber)

  • 可观察对象可以有多个订阅者。

  • 当可观察对象发出一个项目时,每个订阅者的 onNext() 方法都会被调用。

  • 当可观察对象完成发出项目时,每个订阅者的 onComplete() 方法都会被调用。

  • 如果可观察对象发出错误,每个订阅者的 onError() 方法都会被调用。

广告