FILE / ScuroNeko/mtg

mtglib/internal/relay/pools.go

Исходный файл и его история в репозитории.
FILE ca77157fd54e369246d1f57ae4d7c44ce059fe80
Files
mtg/mtglib/internal/relay/pools.go
T

28 lines
424 B
Go

package relay
import "sync"
type eastWest struct {
east []byte
west []byte
}
var eastWestPool = sync.Pool{
New: func() interface{} {
return &eastWest{
east: make([]byte, bufferSize),
west: make([]byte, bufferSize),
}
},
}
func acquireEastWest() *eastWest {
wanted := eastWestPool.Get().(*eastWest) // nolint: forcetypeassert
return wanted
}
func releaseEastWest(ew *eastWest) {
eastWestPool.Put(ew)
}