mirror of
https://github.com/jlelse/GoBlog
synced 2024-07-03 01:07:35 +00:00
24 lines
304 B
Go
24 lines
304 B
Go
package bufferpool
|
|
|
|
import (
|
|
"bytes"
|
|
"sync"
|
|
)
|
|
|
|
var bufferPool = sync.Pool{
|
|
New: func() any {
|
|
return new(bytes.Buffer)
|
|
},
|
|
}
|
|
|
|
func Get() *bytes.Buffer {
|
|
return bufferPool.Get().(*bytes.Buffer)
|
|
}
|
|
|
|
func Put(bufs ...*bytes.Buffer) {
|
|
for _, buf := range bufs {
|
|
buf.Reset()
|
|
bufferPool.Put(buf)
|
|
}
|
|
}
|