Materialize/Dematerialize
Materialize将数据项和事件通知都当做数据项发射,Dematerialize刚好相反。

一个合法的有限的Obversable将调用它的观察者的onNext方法零次或多次,然后调用观察者的onCompleted或onError正好一次。Materialize操作符将这一系列调用,包括原来的onNext通知和终止通知onCompleted或onError都转换为一个Observable发射的数据序列。
RxJava的materialize将来自原始Observable的通知转换为Notification对象,然后它返回的Observable会发射这些数据。
materialize默认不在任何特定的调度器 (Scheduler) 上执行。
- Javadoc: materialize())

Dematerialize操作符是Materialize的逆向过程,它将Materialize转换的结果还原成它原本的形式。
dematerialize反转这个过程,将原始Observable发射的Notification对象还原成Observable的通知。
dematerialize默认不在任何特定的调度器 (Scheduler) 上执行。
- Javadoc: dematerialize())