From 9733a792874e723e9af8e3c20fe0d425e263c97a Mon Sep 17 00:00:00 2001 From: Alan Frindell Date: Wed, 8 Jan 2020 14:35:40 -0800 Subject: [PATCH] Make ThreadLocal *static* Summary: This was comically slow and wasteful derpderp Reviewed By: lnicco Differential Revision: D19204351 fbshipit-source-id: 887f3605f6fbd1667e3c5866fb34409400d76e66 --- proxygen/lib/http/codec/HQStreamCodec.cpp | 4 ++-- proxygen/lib/http/codec/compress/QPACKCodec.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/proxygen/lib/http/codec/HQStreamCodec.cpp b/proxygen/lib/http/codec/HQStreamCodec.cpp index b9ef2d57f..d68239d98 100644 --- a/proxygen/lib/http/codec/HQStreamCodec.cpp +++ b/proxygen/lib/http/codec/HQStreamCodec.cpp @@ -508,8 +508,8 @@ void HQStreamCodec::generateHeaderImpl(folly::IOBufQueue& writeBuf, const HTTPMessage& msg, folly::Optional pushId, HTTPHeaderSize* size) { - folly::ThreadLocal> tempsTL; - folly::ThreadLocal> allHeadersTL; + static folly::ThreadLocal> tempsTL; + static folly::ThreadLocal> allHeadersTL; auto& temps = *tempsTL.get(); auto& allHeaders = *allHeadersTL.get(); temps.clear(); diff --git a/proxygen/lib/http/codec/compress/QPACKCodec.cpp b/proxygen/lib/http/codec/compress/QPACKCodec.cpp index 8f1fb960f..2031863bd 100644 --- a/proxygen/lib/http/codec/compress/QPACKCodec.cpp +++ b/proxygen/lib/http/codec/compress/QPACKCodec.cpp @@ -46,7 +46,7 @@ QPACKEncoder::EncodeResult QPACKCodec::encode( vector
& headers, uint64_t streamId, uint32_t maxEncoderStreamBytes) noexcept { - folly::ThreadLocal> preparedTL; + static folly::ThreadLocal> preparedTL; auto& prepared = *preparedTL.get(); encodedSize_.uncompressed = compress::prepareHeaders(headers, prepared); auto res = encoder_.encode(prepared, encodeHeadroom_, streamId,