(websocket) use persistent member variable as temp variables to encode/decode zlib messages in order to reduce transient allocations

This commit is contained in:
Benjamin Sergeant
2020-04-13 21:38:15 -07:00
parent c57cf413fb
commit 37a054723a
6 changed files with 30 additions and 19 deletions

View File

@ -165,7 +165,7 @@ namespace ix
MessageKind _fragmentedMessageKind;
// Ditto for whether a message is compressed
bool _compressedMessage;
bool _receivedMessageCompressed;
// Fragments are 32K long
static constexpr size_t kChunkSize = 1 << 15;
@ -189,6 +189,9 @@ namespace ix
WebSocketPerMessageDeflateOptions _perMessageDeflateOptions;
std::atomic<bool> _enablePerMessageDeflate;
std::string _decompressedMessage;
std::string _compressedMessage;
// Used to control TLS connection behavior
SocketTLSOptions _socketTLSOptions;