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

---
 go.mod           |    8 ++--
 sdk/sdk.go       |   53 ++++++++++++++------------
 util/util.go     |    8 ++--
 camera/camera.go |   33 ++++++++--------
 4 files changed, 54 insertions(+), 48 deletions(-)

diff --git a/camera/camera.go b/camera/camera.go
index 5c38d6e..ee20b9e 100644
--- a/camera/camera.go
+++ b/camera/camera.go
@@ -45,10 +45,10 @@
 	}
 
 	//鏂囦欢鍒濆鍖�
-	for _,f := range util.FileArr {
+	for _, f := range util.FileArr {
 		logger.Info(f)
 	}
-	for _,f :=range util.FileArr {
+	for _, f := range util.FileArr {
 		createCameraRecvServerAndListen(f.Id)
 	}
 
@@ -100,7 +100,7 @@
 		var oldcameras []string
 
 		for key := range SocketManage {
-			if !strings.HasPrefix(key,util.File_Video_Id_Pre) && !strings.HasPrefix(key,util.File_Audio_Id_Pre) && !strings.HasPrefix(key,util.File_Img_Id_Pre){
+			if !strings.HasPrefix(key, util.File_Video_Id_Pre) && !strings.HasPrefix(key, util.File_Audio_Id_Pre) && !strings.HasPrefix(key, util.File_Img_Id_Pre) {
 				oldcameras = append(oldcameras, key)
 			}
 		}
@@ -136,7 +136,7 @@
 		var oldIds []string
 
 		for key := range SocketManage {
-			if strings.HasPrefix(key,util.File_Video_Id_Pre) || strings.HasPrefix(key,util.File_Audio_Id_Pre) || strings.HasPrefix(key,util.File_Img_Id_Pre){
+			if strings.HasPrefix(key, util.File_Video_Id_Pre) || strings.HasPrefix(key, util.File_Audio_Id_Pre) || strings.HasPrefix(key, util.File_Img_Id_Pre) {
 				oldIds = append(oldIds, key)
 			}
 		}
@@ -169,24 +169,25 @@
 	for {
 		select {
 		case <-socket.Context.Done():
+			socket.Sock.Close()
 			logger.Error("listen recv quit")
 			return
 		default:
 			if recvmessage, err = socket.Sock.Recv(); err != nil {
 
-				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
 			}
 
diff --git a/go.mod b/go.mod
index 186c31d..bcc94b5 100644
--- a/go.mod
+++ b/go.mod
@@ -3,11 +3,11 @@
 go 1.12
 
 require (
-	basic.com/dbapi.git v0.0.0-20191204094909-66f2832e579e // indirect
-	basic.com/pubsub/protomsg.git v0.0.0-20191204083653-a32445f65a09 // indirect
-	basic.com/valib/deliver.git v0.0.0-20190927081905-2d390df9ede3 // indirect
+	basic.com/dbapi.git v0.0.0-20191204094909-66f2832e579e
+	basic.com/pubsub/protomsg.git v0.0.0-20191204083653-a32445f65a09
+	basic.com/valib/deliver.git v0.0.0-20190927081905-2d390df9ede3
 	basic.com/valib/gopherdiscovery.git v0.0.0-20190605034340-15d89d8b4e28
-	basic.com/valib/logger.git v0.0.0-20190928113028-4907b08c4159 // indirect
+	basic.com/valib/logger.git v0.0.0-20190928113028-4907b08c4159
 	basic.com/valib/shm.git v0.0.0-20191029034255-156e610f9bca // indirect
 	github.com/Microsoft/go-winio v0.4.14 // indirect
 	github.com/ajg/form v1.5.1 // indirect
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
 				}
diff --git a/util/util.go b/util/util.go
index d0ad288..e3b8197 100644
--- a/util/util.go
+++ b/util/util.go
@@ -11,12 +11,12 @@
 
 const (
 	// 鍏变韩鍐呭瓨鍙戦��/鎺ユ敹澶辫触shmMaxTryCount娆¢噸鏂板垱寤洪�氶亾灏濊瘯
-	shmMaxTryCount = 7
+	ShmMaxTryCount = 7
 	// 涓嶈鍏变韩鍐呭瓨/mangos鍙戦��/鎺ユ敹澶辫触鏈�澶ф鏁�,璁や负褰撳墠閫氶亾涓嶅啀浣跨敤, 鍏抽棴
 	// 鏈夐棶棰�,鎽勫儚鏈洪暱鏃堕棿鏂綉鍚庨噸杩�,浣嗘槸閫氶亾鍏抽棴
 	tooLongFailed = 300
 
-	File_Img_Id_Pre = "img_"
+	File_Img_Id_Pre   = "img_"
 	File_Video_Id_Pre = "video_"
 	File_Audio_Id_Pre = "audio_"
 )
@@ -142,8 +142,8 @@
 
 func MaybeRestartSocket(socket SocketContext, tryCnt *int) SocketContext {
 	if socket.UseSHM {
-		if *tryCnt > shmMaxTryCount {
-			logger.Info("SDK SEND SHM TRY :", shmMaxTryCount, " RESTART IT")
+		if *tryCnt > ShmMaxTryCount {
+			logger.Info("SDK SEND SHM TRY :", ShmMaxTryCount, " RESTART IT")
 
 			socket.Sock.Close()
 			newSocket, err := NewSocketListen(socket.Mode, socket.URL, socket.UseSHM)

--
Gitblit v1.8.0