summaryrefslogtreecommitdiff
path: root/internal/io/pool/bytesbuffer.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2021-08-28 19:36:46 +0100
committerPaul Buetow <paul@buetow.org>2021-08-28 19:36:46 +0100
commit6d727b9bdbc387c8a5c34406a2c4de9140face38 (patch)
treeb6638220853374536db3d32e862961e4dbaa820a /internal/io/pool/bytesbuffer.go
parent9883a190109623b64e6d311dc2b462a6eae68003 (diff)
use a byte.Buffer in the file reader
Diffstat (limited to 'internal/io/pool/bytesbuffer.go')
-rw-r--r--internal/io/pool/bytesbuffer.go19
1 files changed, 19 insertions, 0 deletions
diff --git a/internal/io/pool/bytesbuffer.go b/internal/io/pool/bytesbuffer.go
new file mode 100644
index 0000000..0a159f5
--- /dev/null
+++ b/internal/io/pool/bytesbuffer.go
@@ -0,0 +1,19 @@
+package pool
+
+import (
+ "bytes"
+ "sync"
+)
+
+var BytesBuffer = sync.Pool{
+ New: func() interface{} {
+ b := bytes.Buffer{}
+ b.Grow(128)
+ return &b
+ },
+}
+
+func RecycleBytesBuffer(b *bytes.Buffer) {
+ b.Reset()
+ BytesBuffer.Put(b)
+}