Hello,
Currently it seems somewhat like undefined behavior on which thread methods like doOnSubscribe() and finallyDo() act. As far as I can tell, doOnSubscribe() uses the Scheduler defined in subscribeOn(), whereas finallyDo() uses observeOn(). But what if the behavior desired here is to have both act on a separate Scheduler?
Simple example of this causing issues for me: increment a value when an Observable is subscribed to, decrement afterwards. If value is ever > 0, then we show a progress bar. I need these to run on particular threads on Android or it'll blow up (manipulating UI from non-main thread).
I'm wondering if I'm just not using these methods properly - it does seem a bit like introducing side effects - but then, what is the point of these methods otherwise?
-Dan