I think the `running.get()` condition is necessary too because someone could unsubscribe just at the moment the last observable completes.