Documentation ¶
Overview ¶
Package buffer 无拷贝IO缓冲区实现
Index ¶
- Variables
- type IOBuffer
- func (b *IOBuffer) DefaultSize() int
- func (b *IOBuffer) Len() int
- func (b *IOBuffer) MoveStartPtr(n int) error
- func (b *IOBuffer) Read(offset, n int) ([]byte, error)
- func (b *IOBuffer) ReadFromReader() (int, error)
- func (b *IOBuffer) RemainSize() int
- func (b *IOBuffer) Seek(n int) ([]byte, error)
- func (b *IOBuffer) SeekAll() ([]byte, error)
- func (b *IOBuffer) SetBanAutoResize(value bool)
- func (b *IOBuffer) SetLogger(l *log.Logger)
- func (b *IOBuffer) TotalSize() int
- func (b *IOBuffer) Write(src []byte) error
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrBufNil = errors.New("buf is nil") ErrReaderNil = errors.New("reader is nil") ErrNotEnough = errors.New("not enough") ErrOverSize = errors.New("oversize") ErrLess0 = errors.New("less than 0") )
io buffer errors
Functions ¶
This section is empty.
Types ¶
type IOBuffer ¶
type IOBuffer struct {
// contains filtered or unexported fields
}
IOBuffer 不是线程安全的
func NewIOBuffer ¶
NewIOBuffer 构造一个缓冲区 length 必须大于0, 否则返回 ErrLess0 错误
func (*IOBuffer) MoveStartPtr ¶
MoveStartPtr 修改缓冲区内容起始指针
func (*IOBuffer) ReadFromReader ¶
ReadFromReader 从reader里面读取数据,如果reader阻塞,会发生阻塞
func (*IOBuffer) SetBanAutoResize ¶
SetBanAutoResize 设置缓冲区是否可以根据需求自动调整大小
Click to show internal directories.
Click to hide internal directories.