From 43e52a52e24ad4fd00d351b21259b9a76affbaed Mon Sep 17 00:00:00 2001
From: 554325746@qq.com <554325746@qq.com>
Date: 星期四, 22 八月 2019 14:40:06 +0800
Subject: [PATCH] memleak bug fix
---
shm.go | 14 +++++++-------
1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/shm.go b/shm.go
index 106c4f2..7899793 100644
--- a/shm.go
+++ b/shm.go
@@ -14,6 +14,8 @@
type SHM struct {
rw *shm.ReadWriteCloser
typ td
+
+ data []byte
}
// Send impl interface Diliver
@@ -53,15 +55,11 @@
ch := make(chan []byte)
go func(){
- var body []byte
- data := make([]byte, maxRecvSize)
- n, err := s.rw.Read(data)
+ n, err := s.rw.Read(s.data)
if err == nil || err == io.EOF {
- body = make([]byte, n)
- copy(body, data)
- // data = data[:n:n]
+ s.data = s.data[:n:n]
}
- ch <- data
+ ch <- s.data
}()
select{
case d := <-ch:
@@ -125,6 +123,7 @@
return &SHM{
rw,
agent,
+ make([]byte, maxRecvSize),
}, nil
}
@@ -141,6 +140,7 @@
return &SHM{
rw,
coactee,
+ make([]byte, maxRecvSize),
}, nil
}
return nil, err
--
Gitblit v1.8.0