47 RC
read(
char *buf, int32_t
size, int32_t &read_size);
55 RC
buffer(
const char *&buf, int32_t &read_size);
70 RC
write(
const char *buf, int32_t
size, int32_t &write_size);
环形缓存,当前用于通讯写入数据时的缓存
Definition: ring_buffer.h:26
int32_t write_pos_
当前写指针的位置,范围不会超出[0, capacity)
Definition: ring_buffer.h:93
int32_t size() const
缓存中已经写入数据的空间大小
Definition: ring_buffer.h:85
int32_t data_size_
已经写入的数据量
Definition: ring_buffer.h:92
int32_t capacity() const
缓存的总容量
Definition: ring_buffer.h:75
std::vector< char > buffer_
缓存使用的内存,使用vector方便管理
Definition: ring_buffer.h:91
int32_t remain() const
缓存中剩余的可写入数据的空间
Definition: ring_buffer.h:80
RingBuffer()
使用默认缓存大小的构造函数,默认大小16K
Definition: ring_buffer.cpp:24
RC write(const char *buf, int32_t size, int32_t &write_size)
将数据写入缓存
Definition: ring_buffer.cpp:93
RC forward(int32_t size)
将读指针向前移动size个字节
Definition: ring_buffer.cpp:78
RC buffer(const char *&buf, int32_t &read_size)
从缓存中读取数据,不会移动读指针
Definition: ring_buffer.cpp:59
RC read(char *buf, int32_t size, int32_t &read_size)
从缓存中读取数据
Definition: ring_buffer.cpp:35