Lightweight & Safe (buffer-writer | general object) pool.
package main
import (
	"crypto/rand"
	"io"
	"github.com/fumiama/orbyte/pbuf"
)
func main() {
	buf := pbuf.NewBuffer(nil) // Allocate Buffer from pool.
	buf.P(func(buf *pbuf.Buffer) {
		io.CopyN(buf, rand.Reader, 4096) // Do sth.
	})
	// After that, buf will be auto-reused on GC.
	b := pbuf.NewBytes(1024) // Allocate Bytes from pool.
	b.V(func(b []byte) {
		rand.Read(b) // Do sth.
	})
	// After that, b will be auto-reused on GC.
}