From 467d125ef6ac819cc1e8bd1a8b5dcd00d491f624 Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期三, 30 十月 2019 09:13:39 +0800
Subject: [PATCH] bug fixed memvirt leak

---
 go.sum           |   18 ++++++++++++++----
 go.mod           |    4 ++--
 sdk/sdk.go       |   21 ++++++++++++---------
 camera/camera.go |   16 +++++++++-------
 4 files changed, 37 insertions(+), 22 deletions(-)

diff --git a/camera/camera.go b/camera/camera.go
index 06f464e..bc16e61 100644
--- a/camera/camera.go
+++ b/camera/camera.go
@@ -1,12 +1,13 @@
 package camera
 
 import (
-	"basic.com/valib/deliver.git"
-	"basic.com/valib/logger.git"
-	"basic.com/pubsub/protomsg.git"
-	"github.com/gogo/protobuf/proto"
 	"taskpubsub/sdk"
 	"taskpubsub/util"
+
+	"basic.com/pubsub/protomsg.git"
+	"basic.com/valib/deliver.git"
+	"basic.com/valib/logger.git"
+	"github.com/gogo/protobuf/proto"
 )
 
 const (
@@ -23,9 +24,9 @@
 }
 
 func initInnerTopic() {
-	for _, recvTopic := range innerRecvTopic {
-		createCameraRecvServerAndListen(recvTopic)
-	}
+	// for _, recvTopic := range innerRecvTopic {
+	// 	createCameraRecvServerAndListen(recvTopic)
+	// }
 }
 
 func Init(useShm bool) {
@@ -132,6 +133,7 @@
 
 				if socket.UseSHM {
 					if tryCount > util.SHMMaxTryCount {
+						socket.Sock.Close()
 						socket, err = util.NewSocketListen(socket.Mode, socket.URL, socket.UseSHM)
 						logger.Info("CAMERA SHM TRY :", tryCount, " RESTART IT")
 
diff --git a/go.mod b/go.mod
index 68be672..e289dee 100644
--- a/go.mod
+++ b/go.mod
@@ -5,10 +5,10 @@
 require (
 	basic.com/dbapi.git v0.0.0-20190831100542-bc0c5d2266dd
 	basic.com/pubsub/protomsg.git v0.0.0-20190905061607-7b96dafe8f99
-	basic.com/valib/deliver.git v0.0.0-20190830083657-47adbbbb6651
+	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-20190904090733-b737ad2f8f18
-	basic.com/valib/shm.git v0.0.0-20190829074754-ad2e00879627 // indirect
+	basic.com/valib/shm.git v0.0.0-20191029034255-156e610f9bca // indirect
 	github.com/ajg/form v1.5.1 // indirect
 	github.com/gogo/protobuf v1.2.1
 	github.com/golang/protobuf v1.3.1
diff --git a/go.sum b/go.sum
index 2d96bac..193a60f 100644
--- a/go.sum
+++ b/go.sum
@@ -2,14 +2,14 @@
 basic.com/dbapi.git v0.0.0-20190831100542-bc0c5d2266dd/go.mod h1:eDXPnxaz6jZPDvBSk7ya7oSASWPCuUEgRTJCjsfKt/Q=
 basic.com/pubsub/protomsg.git v0.0.0-20190905061607-7b96dafe8f99 h1:YSmWZPp/mHoq+/L5d0iTsqjiCcVwZqEQRQAXxQFSbvY=
 basic.com/pubsub/protomsg.git v0.0.0-20190905061607-7b96dafe8f99/go.mod h1:un5NV5VWQoblVLZfx1Rt5vyLgwR0jI92d3VJhfrJhWU=
-basic.com/valib/deliver.git v0.0.0-20190830083657-47adbbbb6651 h1:kZyOKcTe0MnN8WMjrbZ96VhFqQ13VUO9yL6p2lRv6J0=
-basic.com/valib/deliver.git v0.0.0-20190830083657-47adbbbb6651/go.mod h1:bkYiTUGzckyNOjAgn9rB/DOjFzwoSHJlruuWQ6hu6IY=
+basic.com/valib/deliver.git v0.0.0-20190927081905-2d390df9ede3 h1:VY23IpugB/FsU2hSnVeLjZKX5cSgNmhcSEiw6vxX+bg=
+basic.com/valib/deliver.git v0.0.0-20190927081905-2d390df9ede3/go.mod h1:bkYiTUGzckyNOjAgn9rB/DOjFzwoSHJlruuWQ6hu6IY=
 basic.com/valib/gopherdiscovery.git v0.0.0-20190605034340-15d89d8b4e28 h1:3hejanzPEBvZSSvjIqayB83/6/6SLLrX9oNZAdiYELg=
 basic.com/valib/gopherdiscovery.git v0.0.0-20190605034340-15d89d8b4e28/go.mod h1:CQ+UJyZV8MRzwwckncdUDu6/RDTKAzSIPCxc9tFcwPs=
 basic.com/valib/logger.git v0.0.0-20190904090733-b737ad2f8f18 h1:lfBv29ApfEvecKkUIpKHHsS1qu74ZZGNmzZkazK9PJ8=
 basic.com/valib/logger.git v0.0.0-20190904090733-b737ad2f8f18/go.mod h1:SPlOGUUlxCscwF1dkqmLb0oJXVqg1uJ8hsPXLFxrw1M=
-basic.com/valib/shm.git v0.0.0-20190829074754-ad2e00879627 h1:y0t0XG2uPSygF+hiSdLP3Lr959tip/FDPYJpHhbKRec=
-basic.com/valib/shm.git v0.0.0-20190829074754-ad2e00879627/go.mod h1:yYRM7bM9y0KKd4IfNt3myjsvkFVFIIWNjsvK14tNbq4=
+basic.com/valib/shm.git v0.0.0-20191029034255-156e610f9bca h1:Y2Lgpxx5Tq0nKSAaB00F4piJhljMgPpfsBGQ2qpEloE=
+basic.com/valib/shm.git v0.0.0-20191029034255-156e610f9bca/go.mod h1:yYRM7bM9y0KKd4IfNt3myjsvkFVFIIWNjsvK14tNbq4=
 cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
 github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
 github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
@@ -30,6 +30,7 @@
 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ=
 github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no=
+github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I=
 github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
 github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
 github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
@@ -53,6 +54,7 @@
 github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs=
 github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk=
 github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY=
+github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4=
 github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=
 github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo=
 github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU=
@@ -64,11 +66,14 @@
 github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
 github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
 github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
+github.com/magiconair/properties v1.8.0 h1:LLgXmsheXeRoUOBOjtwPQCWIYqM/LU1ayDtDePerRcY=
 github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
 github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
+github.com/mitchellh/mapstructure v1.1.2 h1:fmNYVwqnSfB9mZU6OS2O6GsXM+wcskZDuKQzvN1EDeE=
 github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
 github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U=
 github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U=
+github.com/pelletier/go-toml v1.2.0 h1:T5zMGML61Wp+FlcbWjRDT7yAxhJNAiPPLOFECq181zc=
 github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
 github.com/pierrec/lz4 v2.0.5+incompatible h1:2xWsjqPFWcplujydGg4WmhC/6fZqK42wMM8aXeqhl0I=
 github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY=
@@ -89,9 +94,13 @@
 github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA=
 github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM=
 github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=
+github.com/spf13/afero v1.1.2 h1:m8/z1t7/fwjysjQRYbP0RD+bUIF/8tJwPdEZsI83ACI=
 github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ=
+github.com/spf13/cast v1.3.0 h1:oget//CVOEoFewqQxwr0Ej5yjygnqGkvggSE/gB35Q8=
 github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE=
+github.com/spf13/jwalterweatherman v1.0.0 h1:XHEdyB+EcvlqZamSM4ZOMGlc93t6AcsBEu9Gc1vn7yk=
 github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo=
+github.com/spf13/pflag v1.0.3 h1:zPAT6CGy6wXeQ7NtTnaTerfKOsV6V6F8agHXFiazDkg=
 github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4=
 github.com/spf13/viper v1.4.0 h1:yXHLWeravcrgGyFSyCgdYpXQ9dR9c/WED3pg1RhxqEU=
 github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE=
@@ -147,6 +156,7 @@
 gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo=
 gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74=
 gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
+gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
 gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
 honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
 honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
diff --git a/sdk/sdk.go b/sdk/sdk.go
index bc0021a..ac4788e 100644
--- a/sdk/sdk.go
+++ b/sdk/sdk.go
@@ -1,9 +1,10 @@
 package sdk
 
 import (
-	"github.com/gogo/protobuf/proto"
 	"taskpubsub/tasktag"
 	"taskpubsub/util"
+
+	"github.com/gogo/protobuf/proto"
 
 	"basic.com/pubsub/protomsg.git"
 	"basic.com/valib/deliver.git"
@@ -30,13 +31,13 @@
 }
 
 func initInnerTopic() {
-	for _, sendTopic := range innerSendTopic {
-		createSdkSendServerAndListen(sendTopic)
-	}
+	// for _, sendTopic := range innerSendTopic {
+	// 	createSdkSendServerAndListen(sendTopic)
+	// }
 
-	for _, recvTopic := range innerRecvTopic {
-		createSdkRecvServerAndListen(recvTopic)
-	}
+	// for _, recvTopic := range innerRecvTopic {
+	// 	createSdkRecvServerAndListen(recvTopic)
+	// }
 }
 
 func Init(useShm bool) {
@@ -195,8 +196,8 @@
 		sendTopic = sdkmsg.Tasklab.Sdkinfos[sdkmsg.Tasklab.Index].Ipcid
 		if "Yolo" != sdkmsg.Tasklab.Sdkinfos[sdkmsg.Tasklab.Index].Sdktype &&
 			"FaceDetect" != sdkmsg.Tasklab.Sdkinfos[sdkmsg.Tasklab.Index].Sdktype &&
-			"FaceCompare" != sdkmsg.Tasklab.Sdkinfos[sdkmsg.Tasklab.Index].Sdktype{
-		//if sdkmsg.Tasklab.Sdkinfos[sdkmsg.Tasklab.Index].Sdktype == "" {
+			"FaceCompare" != sdkmsg.Tasklab.Sdkinfos[sdkmsg.Tasklab.Index].Sdktype {
+			//if sdkmsg.Tasklab.Sdkinfos[sdkmsg.Tasklab.Index].Sdktype == "" {
 			logger.Info("----------Sdktype:yitusoutu")
 			logger.Info("鍒嗗彂鐨勪富棰�:", sendTopic, "!Sdktype锛�", sdkmsg.Tasklab.Sdkinfos[sdkmsg.Tasklab.Index].Sdktype)
 		}
@@ -221,6 +222,7 @@
 			if msg, err := socket.Sock.Recv(); err != nil {
 				if socket.UseSHM {
 					if tryCount > util.SHMMaxTryCount {
+						socket.Sock.Close()
 						socket, err = util.NewSocketListen(socket.Mode, socket.URL, socket.UseSHM)
 						logger.Info("SDK RECV SHM TRY :", tryCount, " RESTART IT")
 
@@ -273,6 +275,7 @@
 
 					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")
 

--
Gitblit v1.8.0