Parcourir la source

Use stack allocation instead of heap one

tags/v1.0.4^2
9seconds il y a 6 ans
Parent
révision
f0d2cd494a
1 fichiers modifiés avec 2 ajouts et 12 suppressions
  1. 2
    12
      proxy/direct.go

+ 2
- 12
proxy/direct.go Voir le fichier

@@ -13,15 +13,6 @@ import (
13 13
 
14 14
 const directPipeBufferSize = 1024
15 15
 
16
-var (
17
-	directPipePool = sync.Pool{
18
-		New: func() interface{} {
19
-			rv := make([]byte, directPipeBufferSize)
20
-			return &rv
21
-		},
22
-	}
23
-)
24
-
25 16
 func directConnection(request *protocol.TelegramRequest) error {
26 17
 	telegramConnRaw, err := obfuscated2.TelegramProtocol(request)
27 18
 	if err != nil {
@@ -51,10 +42,9 @@ func directPipe(dst io.WriteCloser, src io.ReadCloser, wg *sync.WaitGroup, logge
51 42
 		wg.Done()
52 43
 	}()
53 44
 
54
-	buf := directPipePool.Get().(*[]byte)
55
-	defer directPipePool.Put(buf)
45
+	buf := [directPipeBufferSize]byte{}
56 46
 
57
-	if _, err := io.CopyBuffer(dst, src, *buf); err != nil {
47
+	if _, err := io.CopyBuffer(dst, src, buf[:]); err != nil {
58 48
 		logger.Debugw("Cannot pump sockets", "error", err)
59 49
 	}
60 50
 }

Chargement…
Annuler
Enregistrer