Wat*_*n.s 7 java rx-java rx-java2
我对RxJava的处理有疑问.我在Github上的RxSwift文档中找到了这个句子.
当序列发送
completed或error事件时,将释放计算序列元素的所有内部资源.要立即取消序列元素和免费资源的生成,请在返回的订阅上调用dispose.
如果我理解正确,资源(可观察的)将在他们打电话onCompleted或之后被释放onError.
所以问题是,RxJava是否像RxSwift一样做,或者我需要自己调用dispose?
谢谢
hgr*_*rey 14
是的,所有相关资源将自动处理.为了说明使用RxJava 2运行以下测试:
boolean isDisposed = false;
@Test
public void testDisposed(){
TestObserver<Integer> to = Observable.<Integer>create(subscriber -> {
subscriber.setDisposable(new Disposable() {
@Override
public boolean isDisposed() {
return isDisposed;
}
@Override
public void dispose() {
isDisposed = true;
}
});
subscriber.onComplete();
}).test();
to.assertComplete();
assertTrue(isDisposed);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7070 次 |
| 最近记录: |