FILE / ScuroNeko/mtg

mtglib/internal/relay/pools.go

Исходный файл и его история в репозитории.
FILE 66f4d967e7346f492d1e845f3831ef3addd2252d
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)
}