Java ConnectableObservable何时终止?
我有一个可以观察到的东西,它有一些魔力,我把它作为活动范围中的一个单件来使用。因此,谁想得到更新,可以订阅,可以得到最后的排放值和新的排放量Java ConnectableObservable何时终止?,java,android,rx-java,rx-java2,Java,Android,Rx Java,Rx Java2,我有一个可以观察到的东西,它有一些魔力,我把它作为活动范围中的一个单件来使用。因此,谁想得到更新,可以订阅,可以得到最后的排放值和新的排放量 Observable<Object> currentZoneObservable; public Observable<Object> getCurrentZoneObservable() { if (currentZoneObservable == null) { currentZ
Observable<Object> currentZoneObservable;
public Observable<Object> getCurrentZoneObservable() {
if (currentZoneObservable == null) {
currentZoneObservable = someUseCase.getObservable()
.replay(1)
.autoConnect();
}
return currentZoneObservable;
}
可观测电流区可观测;
公共可观测getCurrentZoneObservable(){
if(currentZoneObservable==null){
currentZoneObservable=someUseCase.getObservable()
.重播(1)
.autoConnect();
}
可观测的返回电流区;
}
我要确保所有的订户,作为一个好公民退订。我甚至在计算doonSubscribe()
和doonSubscribe()
中的订阅者数量。当应用程序进入后台时,它有0个订阅者
我的问题是,connectableObservable
从未完成,如果它正在执行某些操作,它仍然会继续进行。例如,如果它在网络不可用时重试某个网络呼叫,它会继续这样做
当没有订户时,如何确保我的connectableObservable
停止?我的理解是,.autoConnect()
应该解决这个问题。在没有观察员的情况下不会取消订阅,而是会取消订阅
你可能会对使用a:一些好的文档感兴趣