Files
livego/utils/pool/pool.go
吴浩麟 74da8bec14 - 接入go mod
- 接入docker
- 接入github action自动发布和测试
2019-10-25 15:37:33 +08:00

25 lines
370 B
Go
Executable File

package pool
type Pool struct {
pos int
buf []byte
}
const maxpoolsize = 500 * 1024
func (pool *Pool) Get(size int) []byte {
if maxpoolsize-pool.pos < size {
pool.pos = 0
pool.buf = make([]byte, maxpoolsize)
}
b := pool.buf[pool.pos : pool.pos+size]
pool.pos += size
return b
}
func NewPool() *Pool {
return &Pool{
buf: make([]byte, maxpoolsize),
}
}