RxJava - Observable 的工作原理

Observable 表示数据源,而 观察者(订阅者) 则监听它们。简而言之,Observable 发出项目,然后订阅者使用这些项目。

Observable

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

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

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

  • Observable 可以成功终止。

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

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

订阅者

  • Observable 可以有多个订阅者。

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

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

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