thread_observable2 calls ended() when finished