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