RxJava - Observable 的工作原理


Observables代表观察者(订阅者)监听的数据源。简而言之,Observable 发出项目,然后 Subscriber 消费这些项目。

可观察的

  • 一旦订阅者开始监听,Observable 就会提供数据。

  • Observable 可以发出任意数量的项目。

  • Observable 可以只发出完成信号,也可以不发出任何项目。

  • Observable 可以成功终止。

  • Observable 可能永远不会终止。例如,一个按钮可以被点击任意多次。

  • Observable 可能在任何时间点抛出错误。

订户

  • Observable 可以有多个订阅者。

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

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

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