Skip to content

Conversation

@LeeCampbell
Copy link
Contributor

Closes issue https://rx.codeplex.com/workitem/35

Accompanying perf test console applications (https://github.com/LeeCampbell/RxPerfTests) shows performance is the same for Replay-By-Time and Replay-By-Time-and-Count.
However Replay-One, Replay-Many and Replay-All all benefit from the removal of the Scheduling and Time-stamped Queues. The removal of the extraneous code has the effect of less allocations being made for each subscription and OnNext call. This results in less Garbage Collections and a large increase in throughput.

The ReplaySubjectTests have been extended to ensure that while performance has been improved, that all existing functionality is maintained and remains consistent.

@LeeCampbell
Copy link
Contributor Author

Supporting blog post with performance reports found here http://leecampbell.blogspot.com.au/2014/01/replaysubject-performance-improvements.html

@LeeCampbell
Copy link
Contributor Author

Thanks Kirk. Made the changes.

@LeeCampbell
Copy link
Contributor Author

@kirkshoop, I have added back the multiple disposals to the unit tests. I had inconsistently put them in some unit tests but not others. They are now in each of the ReplayOne, ReplayMany, ReplayAll and ReplayByTime infinite sequence tests.

@kirkshoop
Copy link

Merged!
Sorry for the drawn out process. Thank you for sticking with it.

@kirkshoop kirkshoop closed this Feb 24, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants