refactor(pool): optimize bufio pool's type definition and reset logic

This commit is contained in:
Gouryella
2026-01-29 14:53:23 +08:00
parent 307cf8e6cc
commit dfb19930c7

View File

@@ -2,6 +2,7 @@ package pool
import (
"bufio"
"io"
"sync"
)
@@ -20,11 +21,9 @@ var BufioWriterPool = sync.Pool{
}
// GetReader gets a bufio.Reader from the pool and resets it to read from r.
func GetReader(r interface{}) *bufio.Reader {
func GetReader(r io.Reader) *bufio.Reader {
reader := BufioReaderPool.Get().(*bufio.Reader)
if resetter, ok := r.(interface{ Reset(interface{}) }); ok {
resetter.Reset(r)
}
reader.Reset(r)
return reader
}
@@ -34,11 +33,9 @@ func PutReader(reader *bufio.Reader) {
}
// GetWriter gets a bufio.Writer from the pool and resets it to write to w.
func GetWriter(w interface{}) *bufio.Writer {
func GetWriter(w io.Writer) *bufio.Writer {
writer := BufioWriterPool.Get().(*bufio.Writer)
if resetter, ok := w.(interface{ Reset(interface{}) }); ok {
resetter.Reset(w)
}
writer.Reset(w)
return writer
}