fix(debounceTime): improves performance on quick succession of emits #6049
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Addresses #6045
This turned out to be similar to
debounce
, but with the optimisation on the scheduling bit. Tests unchanged are green, I'm not sure how can I add a test for performance.This optimization can't be used in the
debounce
operator, as that one takes in a stream, where only way of getting the "time window" is by unsubscribing from the previous stream and subscribing on the current one. WithdebounceTime
, as the dueTime is always the same we can optimise.In case this PR moves forward, would it be worth also having the same optimisation on RxJS@^6' debounceTime?