Commit 3cba8fca by ziyue

分包器缓存太多时主动清空数据

parent 5832de7e
ZLToolKit @ 8afa63c3
Subproject commit 88bc73aa6b7e04e04ca45f4fdbe36d4e359088bf Subproject commit 8afa63c31522e031c3d4857f0c723ee4e97447fc
...@@ -19,9 +19,13 @@ static constexpr size_t kMaxCacheSize = 1 * 1024 * 1024; ...@@ -19,9 +19,13 @@ static constexpr size_t kMaxCacheSize = 1 * 1024 * 1024;
namespace mediakit { namespace mediakit {
void HttpRequestSplitter::input(const char *data,size_t len) { void HttpRequestSplitter::input(const char *data,size_t len) {
if (remainDataSize() > kMaxCacheSize) { {
//缓存太多数据无法处理则上抛异常 auto size = remainDataSize();
throw std::out_of_range("remain data size is too huge:" + to_string(remainDataSize())); if (size > kMaxCacheSize) {
//缓存太多数据无法处理则上抛异常
reset();
throw std::out_of_range("remain data size is too huge, now cleared:" + to_string(size));
}
} }
const char *ptr = data; const char *ptr = data;
if(!_remain_data.empty()){ if(!_remain_data.empty()){
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论