1. 程式人生 > >專案實訓(一)Rxjava 2.0 學習筆記

專案實訓(一)Rxjava 2.0 學習筆記

我感覺Rxjava像是一條流水線,一塊原料到來經過層層加工最後交給訂閱者,當然不處理直接交給訂閱者也可以。

從基本設計(Rx1.0)來看,Observable有一個內部類例項OnSubscribe,當Observable呼叫subscribe時會呼叫這個OnSubscribe的call。這就是全部。一般來說會在call裡呼叫Subscriber的方法將資訊傳遞過去。由此基本邏輯,又延伸封裝出各種操作符和騷操作。

執行緒切換和各種資料流的加工可以說是設計的核心了,實際上他們都是用lift實現的:

// 注意:這不是 lift() 的原始碼,而是將原始碼中與效能、相容性、擴充套件性有關的程式碼剔除後的核心程式碼。
// 如果需要看原始碼,可以去 RxJava 的 GitHub 倉庫下載。
public Observable lift(Operator