Stream Multiplexing and Flow Control (updated) #15
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.
Updated following the discussion in #14.
Changes from previous discussion:
HTTP2Multiplexer
structures are not kept in a global table but are part ofHTTP2ServerContext
(one per connection -> one per context) and wrapped in aFreeListRef
structure. It is passed by reference (usingref
) across the http2.d and exchange.d modules.IndexingTable
management follows the same approach: removed the raw pointer across the HPACK files to support passing the table by reference, storing it inHTTP2ServerContext
.The commits have been rebased for better readability. Let me know if this needs to be split.
Thanks!