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
---
camera/camera.go | 45 ++++++++++++++++++++++++++-------------------
1 files changed, 26 insertions(+), 19 deletions(-)
diff --git a/camera/camera.go b/camera/camera.go
index 727e017..bc16e61 100644
--- a/camera/camera.go
+++ b/camera/camera.go
@@ -1,20 +1,13 @@
package camera
import (
- "basic.com/valib/deliver.git"
- //"sync"
- "taskpubsub/logger"
-
"taskpubsub/sdk"
"taskpubsub/util"
"basic.com/pubsub/protomsg.git"
+ "basic.com/valib/deliver.git"
+ "basic.com/valib/logger.git"
"github.com/gogo/protobuf/proto"
-
- // "golang.org/x/sys/unix"
-
- "fmt"
- //"time"
)
const (
@@ -31,9 +24,9 @@
}
func initInnerTopic() {
- for _, recvTopic := range innerRecvTopic {
- createCameraRecvServerAndListen(recvTopic)
- }
+ // for _, recvTopic := range innerRecvTopic {
+ // createCameraRecvServerAndListen(recvTopic)
+ // }
}
func Init(useShm bool) {
@@ -60,7 +53,7 @@
func createCameraRecvServerAndListen(id string) {
if _, isExist := SocketManage[id]; !isExist { //涓嶅瓨鍦�
- url := fmt.Sprintf("ipc:///tmp/%s.ipc", id)
+ url := "ipc:///tmp/" + id + ".ipc"
m := deliver.PushPull
if shm {
m = deliver.Shm
@@ -68,7 +61,7 @@
}
- fmt.Println("CAMERA URL : ", url)
+ logger.Info("CAMERA URL : ", url)
socket, err := util.NewSocketListen(int(m), url, shm)
if err != nil {
logger.Error("create socket error")
@@ -137,10 +130,12 @@
default:
if recvmessage, err = socket.Sock.Recv(); err != nil {
//logger.Error("[camera] err is: ", err)
+
if socket.UseSHM {
if tryCount > util.SHMMaxTryCount {
+ socket.Sock.Close()
socket, err = util.NewSocketListen(socket.Mode, socket.URL, socket.UseSHM)
- fmt.Println("CAMERA SHM TRY :", tryCount, " RESTART IT")
+ logger.Info("CAMERA SHM TRY :", tryCount, " RESTART IT")
tryCount = 0
@@ -162,6 +157,7 @@
continue
}
if faceExtractWebCID == imagemsg.Cid { //浠ュ浘鎼滃浘
+ logger.Info("id: ", faceExtractWebTaskID)
doTaskList(imagemsg.Cid, "", faceExtractWebTaskID, recvmessage)
} else {
taskIDs := GetAllTaskByID(imagemsg.Cid)
@@ -179,6 +175,9 @@
for _, camsingle := range util.CameraTasks {
if cid == camsingle.Camera.Id {
for _, tasksingle := range camsingle.Tasks {
+ if !tasksingle.Enable {
+ continue
+ }
tasks = append(tasks, tasksingle.Taskid)
}
return
@@ -190,7 +189,7 @@
func doTaskList(cid string, caddr string, taskid string, data []byte) {
// 鏁版嵁鍔犲伐(鎵撴爣绛�)
- logger.Debug("taskid: ", taskid, "has ", len(data), "data[]byte")
+ //logger.Info("taskid: ", taskid, "has ", len(data), "data[]byte")
sdkmsg := sdk.ToSdkMsg(cid, caddr, taskid, data)
if sdkmsg.Tasklab == nil {
logger.Error(cid, " not have taskid: ", taskid)
@@ -199,11 +198,19 @@
// 璁$畻鍒嗗彂鐨勪富棰�
SendTopic := sdk.GetSdkSendTopic(sdkmsg)
- logger.Debug(SendTopic)
+ //logger.Info(SendTopic)
+ if "facedetect-sdk-no-track" == SendTopic || "virtual-faceextract-sdk-pull" == SendTopic {
+ logger.Info(SendTopic)
+ }
if _, ok := sdk.SdkMap[SendTopic]; ok {
+ if "facedetect-sdk-no-track" == SendTopic || "virtual-faceextract-sdk-pull" == SendTopic {
+ logger.Info(SendTopic)
+ }
sdk.SdkMap[SendTopic] <- sdkmsg
- logger.Debug("dispute sendtopic success", SendTopic)
+ if "facedetect-sdk-no-track" == SendTopic || "virtual-faceextract-sdk-pull" == SendTopic {
+ logger.Info("dispute sendtopic success", SendTopic)
+ }
} else {
- logger.Debug("鍒嗗彂鐨勪富棰樹笉瀛樺湪")
+ logger.Info("鍒嗗彂鐨勪富棰樹笉瀛樺湪")
}
}
--
Gitblit v1.8.0