in pkg/bufferpool/bufferpool.go [29:43]
func Init(bufferLimit int, bufferSize int) *BufferPool {
bufferHeadHash := make(map[*byte]bool)
bufferArray := make([]*[]byte, bufferLimit)
for i := 0; i < bufferLimit; i++ {
buf := make([]byte, bufferSize)
bufferArray[i] = &buf
bufferHeadHash[getBufferPointer(&buf)] = true
}
bufferPool := BufferPool{
Buffers: bufferArray,
lock: sync.Mutex{},
bufferHeadHash: bufferHeadHash,
}
return &bufferPool
}