Files
seanime-docker/seanime-2.9.10/internal/util/pool.go
2025-09-20 14:08:38 +01:00

26 lines
318 B
Go

package util
import "sync"
type Pool[T any] struct {
sync.Pool
}
func (p *Pool[T]) Get() T {
return p.Pool.Get().(T)
}
func (p *Pool[T]) Put(x T) {
p.Pool.Put(x)
}
func NewPool[T any](newF func() T) *Pool[T] {
return &Pool[T]{
Pool: sync.Pool{
New: func() interface{} {
return newF()
},
},
}
}