2024-07-19 10:21:26 +03:00

22 lines
303 B
Go

package helpers
import (
"bytes"
"sync"
)
var pool sync.Pool
func NewBuffer() (*bytes.Buffer, func(*bytes.Buffer)) {
if v := pool.Get(); v != nil {
b, _ := v.(*bytes.Buffer)
b.Reset()
return b, putter
}
return &bytes.Buffer{}, putter
}
func putter(buff *bytes.Buffer) {
pool.Put(buff)
}