From a61cd237d45c7bec7a3e0cdf32ed33c49b41b73b Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期一, 16 十二月 2019 17:41:12 +0800
Subject: [PATCH] update

---
 util/util.go |   38 +++++++++++++++++++++++++++++++++-----
 1 files changed, 33 insertions(+), 5 deletions(-)

diff --git a/util/util.go b/util/util.go
index 875e0f7..e3b8197 100644
--- a/util/util.go
+++ b/util/util.go
@@ -3,15 +3,23 @@
 import (
 	"context"
 	"errors"
-	"fmt"
 
 	"basic.com/valib/deliver.git"
 
-	// "github.com/pierrec/lz4"
-	"taskpubsub/logger"
+	"basic.com/valib/logger.git"
 )
 
-const SHMMaxTryCount = 3
+const (
+	// 鍏变韩鍐呭瓨鍙戦��/鎺ユ敹澶辫触shmMaxTryCount娆¢噸鏂板垱寤洪�氶亾灏濊瘯
+	ShmMaxTryCount = 7
+	// 涓嶈鍏变韩鍐呭瓨/mangos鍙戦��/鎺ユ敹澶辫触鏈�澶ф鏁�,璁や负褰撳墠閫氶亾涓嶅啀浣跨敤, 鍏抽棴
+	// 鏈夐棶棰�,鎽勫儚鏈洪暱鏃堕棿鏂綉鍚庨噸杩�,浣嗘槸閫氶亾鍏抽棴
+	tooLongFailed = 300
+
+	File_Img_Id_Pre   = "img_"
+	File_Video_Id_Pre = "video_"
+	File_Audio_Id_Pre = "audio_"
+)
 
 type SocketContext struct {
 	Sock    deliver.Deliver
@@ -103,7 +111,7 @@
 		var err error
 		socket.Sock, err = deliver.NewServerWithError(deliver.Mode(mode), url)
 		if err != nil {
-			fmt.Println("TASK CREATE SERVER SHM ERROR: ", err)
+			logger.Info("TASK CREATE SERVER SHM ERROR: ", err)
 		}
 	} else {
 		socket.Sock = deliver.NewServer(deliver.Mode(mode), url)
@@ -131,3 +139,23 @@
 
 	return socket, nil
 }
+
+func MaybeRestartSocket(socket SocketContext, tryCnt *int) SocketContext {
+	if socket.UseSHM {
+		if *tryCnt > ShmMaxTryCount {
+			logger.Info("SDK SEND SHM TRY :", ShmMaxTryCount, " RESTART IT")
+
+			socket.Sock.Close()
+			newSocket, err := NewSocketListen(socket.Mode, socket.URL, socket.UseSHM)
+			if err != nil {
+				return socket
+			}
+
+			*tryCnt = 0
+
+			return newSocket
+		}
+	}
+
+	return socket
+}

--
Gitblit v1.8.0