aboutsummaryrefslogtreecommitdiff
path: root/weed/operation/buffer_pool.go
blob: 9cbe4787f37a8dfeb030ea508340d27fbc1784cd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package operation

import (
	"github.com/valyala/bytebufferpool"
	"sync/atomic"
)

var bufferCounter int64

func GetBuffer() *bytebufferpool.ByteBuffer {
	defer func() {
		atomic.AddInt64(&bufferCounter, 1)
		// println("+", bufferCounter)
	}()
	return bytebufferpool.Get()
}

func PutBuffer(buf *bytebufferpool.ByteBuffer) {
	defer func() {
		atomic.AddInt64(&bufferCounter, -1)
		// println("-", bufferCounter)
	}()
	bytebufferpool.Put(buf)
}