优化http调试日志性能

This commit is contained in:
ziyue
2021-08-12 21:02:07 +08:00
parent 7b60f8b093
commit 0f6d1135eb
5 changed files with 52 additions and 16 deletions

View File

@@ -69,7 +69,8 @@ class HttpStringBody : public HttpBody{
public:
typedef std::shared_ptr<HttpStringBody> Ptr;
HttpStringBody(const string &str);
virtual ~HttpStringBody(){}
~HttpStringBody() override = default;
ssize_t remainSize() override;
Buffer::Ptr readData(size_t size) override ;
@@ -78,6 +79,22 @@ private:
mutable string _str;
};
/**
* Buffer类型的content
*/
class HttpBufferBody : public HttpBody{
public:
typedef std::shared_ptr<HttpBufferBody> Ptr;
HttpBufferBody(Buffer::Ptr buffer);
~HttpBufferBody() override = default;
ssize_t remainSize() override;
Buffer::Ptr readData(size_t size) override;
private:
Buffer::Ptr _buffer;
};
/**
* 文件类型的content
*/
@@ -93,7 +110,7 @@ public:
*/
HttpFileBody(const std::shared_ptr<FILE> &fp,size_t offset,size_t max_size);
HttpFileBody(const string &file_path);
~HttpFileBody(){};
~HttpFileBody() override = default;
ssize_t remainSize() override ;
Buffer::Ptr readData(size_t size) override;