Fix sync.Pool example

This commit is contained in:
Robert Pająk 2024-01-25 11:27:46 +01:00 committed by GitHub
parent cad4f47cbe
commit 3035221cb1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -7,17 +7,21 @@ import (
var pool = sync.Pool{
New: func() any {
return make([]byte, 1024)
b := make([]byte, 1024)
return &b
},
}
func write(w io.Writer) {
buffer := pool.Get().([]byte)
buffer = buffer[:0]
defer pool.Put(buffer)
bPtr := pool.Get().(*[]byte)
defer func() {
*bPtr = (*bPtr)[:0]
pool.Put(bPtr)
}()
getResponse(buffer)
_, _ = w.Write(buffer)
b := *bPtr
getResponse(b)
_, _ = w.Write(b)
}
func getResponse([]byte) {