14#define DEFAULT_BUFFER_SIZE (10 * 1024 * 1024)
15#define THRESHOLD_BUFFER_SIZE (100 * 1024 * 1024)
16#define INCREMENT_BUFFER_SIZE (10 * 1024 * 1024)
43 void push(
const char *data,
size_t len)
152 new_size =
_buffer.size() * 2 + len;
#define DEFAULT_BUFFER_SIZE
默认缓冲区大小
Definition buffer.hpp:14
#define THRESHOLD_BUFFER_SIZE
阈值缓冲区大小
Definition buffer.hpp:15
#define INCREMENT_BUFFER_SIZE
增量大小
Definition buffer.hpp:16
异步日志缓冲区类
Definition buffer.hpp:24
void push(const char *data, size_t len)
向缓冲区写入数据
Definition buffer.hpp:43
void moveReader(size_t len)
移动读指针
Definition buffer.hpp:88
size_t readAbleSize()
获取可读数据的长度
Definition buffer.hpp:66
bool empty()
判空
Definition buffer.hpp:121
void ensureEnoughSize(size_t len)
确保缓冲区有足够的空间
Definition buffer.hpp:146
size_t writeAbleSize()
获取可写数据的长度
Definition buffer.hpp:76
const char * begin()
获取可读数据的起始地址
Definition buffer.hpp:57
Buffer()
构造函数
Definition buffer.hpp:31
std::vector< char > _buffer
存储缓冲区数据的字符
Definition buffer.hpp:159
size_t _reader_idx
可读数据指针
Definition buffer.hpp:160
void swap(Buffer &buffer)
交换当前缓冲区与另一个缓冲区
Definition buffer.hpp:110
size_t _writer_idx
可写数据指针
Definition buffer.hpp:161
void moveWriter(size_t len)
移动写指针
Definition buffer.hpp:134
void reset()
重置缓冲区
Definition buffer.hpp:98