Просмотр исходного кода

Remove redundant copyBufferPool from relay

tags/v2.1.11^2^2
9seconds 2 месяцев назад
Родитель
Сommit
ee524abdb5
2 измененных файлов: 3 добавлений и 23 удалений
  1. 0
    19
      mtglib/internal/relay/pools.go
  2. 3
    4
      mtglib/internal/relay/relay.go

+ 0
- 19
mtglib/internal/relay/pools.go Просмотреть файл

@@ -1,19 +0,0 @@
1
-package relay
2
-
3
-import "sync"
4
-
5
-var copyBufferPool = sync.Pool{
6
-	New: func() any {
7
-		rv := make([]byte, copyBufferSize)
8
-
9
-		return &rv
10
-	},
11
-}
12
-
13
-func acquireCopyBuffer() *[]byte {
14
-	return copyBufferPool.Get().(*[]byte) //nolint: forcetypeassert
15
-}
16
-
17
-func releaseCopyBuffer(buf *[]byte) {
18
-	copyBufferPool.Put(buf)
19
-}

+ 3
- 4
mtglib/internal/relay/relay.go Просмотреть файл

@@ -35,13 +35,12 @@ func Relay(ctx context.Context, log Logger, telegramConn, clientConn essentials.
35 35
 }
36 36
 
37 37
 func pump(log Logger, src, dst essentials.Conn, direction string) {
38
+	var buf [copyBufferSize]byte
39
+
38 40
 	defer src.CloseRead()  //nolint: errcheck
39 41
 	defer dst.CloseWrite() //nolint: errcheck
40 42
 
41
-	copyBuffer := acquireCopyBuffer()
42
-	defer releaseCopyBuffer(copyBuffer)
43
-
44
-	n, err := io.CopyBuffer(src, dst, *copyBuffer)
43
+	n, err := io.CopyBuffer(src, dst, buf[:])
45 44
 
46 45
 	switch {
47 46
 	case err == nil:

Загрузка…
Отмена
Сохранить