buffer.go 272 B

1234567891011121314151617181920212223
  1. package pool
  2. import (
  3. "bytes"
  4. "sync"
  5. )
  6. var (
  7. bufferPool sync.Pool
  8. )
  9. func Get() *bytes.Buffer {
  10. if v := bufferPool.Get(); v == nil {
  11. return new(bytes.Buffer)
  12. } else {
  13. return v.(*bytes.Buffer)
  14. }
  15. }
  16. func Put(sb *bytes.Buffer) {
  17. sb.Reset()
  18. bufferPool.Put(sb)
  19. }