1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2024-12-22 10:08:15 -05:00
v2fly/vendor/github.com/lucas-clemente/quic-go/buffer_pool.go
2018-11-21 11:03:47 +01:00

29 lines
428 B
Go

package quic
import (
"sync"
"v2ray.com/core/common/bytespool"
"github.com/lucas-clemente/quic-go/internal/protocol"
)
var bufferPool *sync.Pool
func getPacketBuffer() *[]byte {
b := bufferPool.Get().([]byte)
return &b
}
func putPacketBuffer(buf *[]byte) {
b := *buf
if cap(b) < 2048 {
return
}
bufferPool.Put(b[:cap(b)])
}
func init() {
bufferPool = bytespool.GetPool(int32(protocol.MaxReceivePacketSize))
}