From 374ca2159407c6f3ec786bc19e25da44ded62fcf Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Fri, 6 Mar 2026 11:22:29 +0800 Subject: internal/bufpool: Split files --- internal/bufpool/release.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 internal/bufpool/release.go (limited to 'internal/bufpool/release.go') diff --git a/internal/bufpool/release.go b/internal/bufpool/release.go new file mode 100644 index 00000000..d8a52061 --- /dev/null +++ b/internal/bufpool/release.go @@ -0,0 +1,17 @@ +package bufpool + +// Release returns the buffer to the global pool if it originated from the +// pool and its capacity is no larger than maxPooledBuffer. After release, the +// Buffer becomes invalid and should not be used further. +// +// Releasing a non-pooled buffer has no effect beyond clearing its internal +// storage. +func (buf *Buffer) Release() { + if buf.buf == nil { + return + } + + buf.returnToPool() + buf.buf = nil + buf.pool = unpooled +} -- cgit v1.3.1-10-gc9f91