From e87bc90683436ee856c1d14ecab1f16940a20471 Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期四, 05 十二月 2019 13:20:20 +0800
Subject: [PATCH] update

---
 sdk/sdk.go |   53 +++++++++++++++++++++++++++++------------------------
 1 files changed, 29 insertions(+), 24 deletions(-)

diff --git a/sdk/sdk.go b/sdk/sdk.go
index 8e5c723..88c0445 100644
--- a/sdk/sdk.go
+++ b/sdk/sdk.go
@@ -216,23 +216,26 @@
 	for {
 		select {
 		case <-socket.Context.Done():
+			socket.Sock.Close()
+
 			logger.Info("socket close")
 			return
 		default:
 			if msg, err := socket.Sock.Recv(); err != nil {
-				tryCount++
-				socket = util.MaybeRestartSocket(socket, &tryCount)
 
-				// if socket.UseSHM {
-				// 	if tryCount > util.SHMMaxTryCount {
-				// 		socket.Sock.Close()
-				// 		socket, err = util.NewSocketListen(socket.Mode, socket.URL, socket.UseSHM)
-				// 		logger.Info("SDK SEND SHM TRY :", util.SHMMaxTryCount, " RESTART IT")
-				// 		tryCount = 0
-				// 		continue
-				// 	}
-				// 	tryCount++
-				// }
+				// tryCount++
+				// socket = util.MaybeRestartSocket(socket, &tryCount)
+
+				if socket.UseSHM {
+					if tryCount > util.ShmMaxTryCount {
+						socket.Sock.Close()
+						socket, err = util.NewSocketListen(socket.Mode, socket.URL, socket.UseSHM)
+						logger.Info("SDK SEND SHM TRY :", util.ShmMaxTryCount, " RESTART IT")
+						tryCount = 0
+						continue
+					}
+					tryCount++
+				}
 				continue
 			} else {
 				err = proto.Unmarshal(msg, &repsdkmsg)
@@ -259,6 +262,8 @@
 	for {
 		select {
 		case <-socket.Context.Done():
+			socket.Sock.Close()
+
 			logger.Info("socket is close")
 			return
 		case v, ok := <-in:
@@ -274,19 +279,19 @@
 						logger.Error("failed send:sdkid=", sdkid)
 					}
 
-					tryCount++
-					socket = util.MaybeRestartSocket(socket, &tryCount)
+					// tryCount++
+					// socket = util.MaybeRestartSocket(socket, &tryCount)
 
-					// if socket.UseSHM {
-					// 	if tryCount > util.SHMMaxTryCount {
-					// 		socket.Sock.Close()
-					// 		socket, err = util.NewSocketListen(socket.Mode, socket.URL, socket.UseSHM)
-					// 		logger.Info("SDK SEND SHM TRY :", util.SHMMaxTryCount, " RESTART IT")
-					// 		tryCount = 0
-					// 		continue
-					// 	}
-					// 	tryCount++
-					// }
+					if socket.UseSHM {
+						if tryCount > util.ShmMaxTryCount {
+							socket.Sock.Close()
+							socket, err = util.NewSocketListen(socket.Mode, socket.URL, socket.UseSHM)
+							logger.Info("SDK SEND SHM TRY :", util.ShmMaxTryCount, " RESTART IT")
+							tryCount = 0
+							continue
+						}
+						tryCount++
+					}
 
 					continue
 				}

--
Gitblit v1.8.0