This repository was archived by the owner on Aug 29, 2024. It is now read-only.
Minimize extra memory allocations in Stream#read and Stream#read_partial #8
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.
These changes minimize extra memory allocations, making it possible to read from very large streams with near-constant memory usage.
For some reason the following change made the difference in this effort:
I'm not sure I understand why, I was mostly just trying different things until something worked.
When I tested
Async::HTTP::Body::Fixed
andAsync::HTTP::Body::Chunked
with these changes, they also showed very little memory allocation. BTW, I'm about to submit a PR which adds specs for both of those body classes.For some reason this change didn't bring a positive effect on
falcon
itself. I will still have to investigate that.