package gpool import "sync" type Pool[T any] struct { p sync.Pool New func() T } func (p *Pool[T]) Get() T { return p.p.Get().(T) } func (p *Pool[T]) Put(x T) { p.p.Put(x) }