Observables (which are actually just the factories for observable streams) are in general not affected by their subscribers. However, they CAN be implemented in a way that unsubscribing to them affects other subscribers. This is not the case for BehaviorSubject
though.
Generally, you wouldn't want to alter other streams when a subscriber unsubscribes. This would go against the elasticity and reciliency goals of reactive programming (shared state potentially creates bottlenecks and leads to errors being propagated to other streams)
So yes, BehaviorSubject
will keep emitting to other subscribers as long as it's not completed. It won't, however, emit to the take(1)
subscriber at any time after it has sent the first notification.