import { interval, Subject } from 'rxjs';import { multicast, refCount } from 'rxjs/operators';const observable = interval(1000);/** * 1. Create a new Subject. */const subject = new Subject();/** * 2. Use the multicast operator to create a ConnectableObservable, * and use the refCount operator */const multicasted = observable.pipe(multicast(subject), refCount());/** * 3. Subscribe to the multicasted observable and keep a reference * to the Subscription that is reterned. */const subscription = multicasted.subscribe(console.log);subscription.add(multicasted.subscribe(console.log));/** * 4. After 5000 milliseconds unsubscribe from the multicasted observable. */setTimeout(() => subscription.unsubscribe(), 5000);