Reduce nghttp2_stream size

This commit is contained in:
Tatsuhiro Tsujikawa 2015-12-03 22:53:02 +09:00
parent 93d8636fb0
commit 478a423bcf
1 changed files with 11 additions and 11 deletions

View File

@ -146,6 +146,15 @@ struct nghttp2_stream {
int64_t content_length; int64_t content_length;
/* Received body so far */ /* Received body so far */
int64_t recv_content_length; int64_t recv_content_length;
/* Base last_cycle for direct descendent streams. */
uint64_t descendant_last_cycle;
/* Next scheduled time to sent item */
uint64_t cycle;
/* Next seq used for direct descendant streams */
uint64_t descendant_next_seq;
/* Secondary key for prioritization to break a tie for cycle. This
value is monotonically increased for single parent stream. */
uint64_t seq;
/* pointers to form dependency tree. If multiple streams depend on /* pointers to form dependency tree. If multiple streams depend on
a stream, only one stream (left most) has non-NULL dep_prev which a stream, only one stream (left most) has non-NULL dep_prev which
points to the stream it depends on. The remaining streams are points to the stream it depends on. The remaining streams are
@ -164,6 +173,8 @@ struct nghttp2_stream {
void *stream_user_data; void *stream_user_data;
/* Item to send */ /* Item to send */
nghttp2_outbound_item *item; nghttp2_outbound_item *item;
/* Last written length of frame payload */
size_t last_writelen;
/* stream ID */ /* stream ID */
int32_t stream_id; int32_t stream_id;
/* Current remote window size. This value is computed against the /* Current remote window size. This value is computed against the
@ -202,17 +213,6 @@ struct nghttp2_stream {
then its ancestors, except for root, are also queued. This then its ancestors, except for root, are also queued. This
invariant may break in fatal error condition. */ invariant may break in fatal error condition. */
uint8_t queued; uint8_t queued;
/* Base last_cycle for direct descendent streams. */
uint64_t descendant_last_cycle;
/* Next scheduled time to sent item */
uint64_t cycle;
/* Next seq used for direct descendant streams */
uint64_t descendant_next_seq;
/* Secondary key for prioritization to break a tie for cycle. This
value is monotonically increased for single parent stream. */
uint64_t seq;
/* Last written length of frame payload */
size_t last_writelen;
/* This flag is used to reduce excessive queuing of WINDOW_UPDATE to /* This flag is used to reduce excessive queuing of WINDOW_UPDATE to
this stream. The nonzero does not necessarily mean WINDOW_UPDATE this stream. The nonzero does not necessarily mean WINDOW_UPDATE
is not queued. */ is not queued. */