최근에 아주 바보같은 실수..
Observable.just(0)
.doOnNext(value -> anyObservable())
.subscribe(value -> {})
이런 코드를 작성한 적이 있다.
여기서 문제는?
anyObservable()이 호출은 되는데, 실행이 안됨..
왜냐하면 doOnNext/doOnSubscribe/doOnTerminate/doOnError 내부에서의 구문은
단순히 명령의 실행이지 Rx chain을 연결하는 것이 아니라서 subscribe가 되지 않는다.
즉 cold observable이 기본인 Rx에서 subscribe가 되지 않았기 때문에 그냥 변수선언일 뿐이라는것!
주의하자!!
댓글 없음:
댓글 쓰기