讓一個(gè)可連接的Observable開始發(fā)射數(shù)據(jù)給訂閱者
http://wiki.jikexueyuan.com/project/rx-docs/images/operators/publishConnect.c.png" alt="connect" />
可連接的Observable (connectable Observable)與普通的Observable差不多,不過它并不會(huì)在被訂閱時(shí)開始發(fā)射數(shù)據(jù),而是直到使用了Connect
操作符時(shí)才會(huì)開始。用這個(gè)方法,你可以等待所有的觀察者都訂閱了Observable之后再開始發(fā)射數(shù)據(jù)。
http://wiki.jikexueyuan.com/project/rx-docs/images/operators/publishConnect.png" alt="connect" />
RxJava中connect
是ConnectableObservable
接口的一個(gè)方法,使用publish
操作符可以將一個(gè)普通的Observable轉(zhuǎn)換為一個(gè)ConnectableObservable
。
調(diào)用ConnectableObservable
的connect
方法會(huì)讓它后面的Observable開始給發(fā)射數(shù)據(jù)給訂閱者。
connect
方法返回一個(gè)Subscription
對(duì)象,可以調(diào)用它的unsubscribe
方法讓Observable停止發(fā)射數(shù)據(jù)給觀察者。
即使沒有任何訂閱者訂閱它,你也可以使用connect
方法讓一個(gè)Observable開始發(fā)射數(shù)據(jù)(或者開始生成待發(fā)射的數(shù)據(jù))。這樣,你可以將一個(gè)"冷"的Observable變?yōu)?quot;熱"的。