
说明:
Observable是数据生成器,数据可以通过各种变换(transform)来整理成需要的格式,可指定特定线程下跑。
Subscription是数据使用,可以同时给多个subscription,而且,它们可在特定线程下跑。
具体流程:

其中,MyObservable<T>和MySubscription是Observable.OnSubscribe和Observer的实现类,MyObservable#call中会调用MySubscription#onNext(T),onNext(T)可以多次调用,当成功时,最后调用onComplete,如果失败,最好调用onError
比AsyncTask提供更好地控制线程