0

After going through some discussions about when to dispose a CompositeDisposable, I wonder why we can't just add a .dispose() after .subscribe() in code.

Observable.just(0)
    .doOnNext{...}
    .subscribe()
    .dispose()

What is actually happen if the code is like this? Is it ok to write like this? (instead of .addTo(compositeDisposable))

4

1 回答 1

0

在您调用 dispose 后,它不会再将结果传播给订阅者

所以你应该在这个 observable 停止发出如下值时立即处理你的一次性用品

fun Disposable?.disposeIfNotNullAndNotDisposed() {
    if (!(this == null || this.isDisposed)) this.dispose()
}
于 2019-10-08T17:06:16.783 回答