ReplaySubject
passes to each subscribed observer all the values from the source sequence, regardless of when the observer subscribes.
Any observers which subscribe late will immediately receive all values which were sent out between the time that ReplaySubject
was created and the time that the observer subscribed to it. It is also possible to parameterize the ReplaySubject
to throw away old values after a certain period of time, or after a specified buffer size is exceeded.