From 40d864645ff608e3a81d115fef26bba87954be2c Mon Sep 17 00:00:00 2001
From: 554325746@qq.com <554325746@qq.com>
Date: 星期一, 22 七月 2019 18:42:06 +0800
Subject: [PATCH] add log and fix pubusb

---
 tasktag/tasktag.go |   60 +++++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 43 insertions(+), 17 deletions(-)

diff --git a/tasktag/tasktag.go b/tasktag/tasktag.go
index 24fb853..9f54083 100644
--- a/tasktag/tasktag.go
+++ b/tasktag/tasktag.go
@@ -1,37 +1,63 @@
 package tasktag
 
 import (
-	"fmt"
+	"sync"
 
-	"github.com/long/test/protomsg"
+	"basic.com/pubsub/protomsg.git"
+	"github.com/long/test/util"
+    "github.com/long/test/logger"
 )
 
-var TaskMapLab = make(map[string]*protomsg.TaskLabel)
+var TaskMapLab sync.Map
 
-//
 func Init() {
+
+	logger.Info("============= init tasktag info =====================")
+	GenTaskMap()
+	go func(taskflag chan bool) {
+		for _ = range taskflag {
+			GenTaskMap()
+			logger.Info("update task finished!")
+		}
+
+	}(util.TaskSdkflag)
+}
+
+func GenTaskMap() {
 	var tls []protomsg.TaskLabel
+	for _, taskSdk := range util.TaskSdks {
 
-	sdk1 := "812b674b-2375-4589-919a-5c1c3278a972"
-	sdk2 := "812b674b-2375-4589-919a-5c1c3278a971"
+		var tl protomsg.TaskLabel
+		tl.Taskid = taskSdk.Task.Taskid
+        tl.Taskname = taskSdk.Task.Taskname
 
-	task1 := protomsg.TaskLabel{Taskid: "5b0902ae-b1bd-43c0-816d-0a87f1f859d1", Sdkids: []string{sdk1, sdk2}, Index: int32(0)}
-	tls = append(tls, task1)
-
-	task2 := protomsg.TaskLabel{Taskid: "5b0902ae-b1bd-43c0-816d-0a87f1f859d2", Sdkids: []string{sdk1}, Index: int32(0)}
-	tls = append(tls, task2)
-
-	GenTasklab(tls)
-	for key, value := range TaskMapLab {
-		fmt.Println()
-		fmt.Println(key, value)
+		for _, sdkinfo := range taskSdk.Sdks {
+            sdkinfowithtask := new(protomsg.SdkmsgWithTask) 
+            sdkinfowithtask.Ipcid = sdkinfo.IpcId
+            sdkinfowithtask.Sdktype = sdkinfo.SdkType
+            sdkinfowithtask.Sdkdata = make([]byte, 1)
+            tl.Sdkinfos = append(tl.Sdkinfos, sdkinfowithtask)
+		}
+		tl.Index = int32(0)
+		tls = append(tls, tl)
 	}
+	GenTasklab(tls)
+	TaskMapLab.Range(func(k, v interface{}) bool {
+		logger.Info(k, v)
+		return true
+	})
 }
 
 // 浠巗qlite 鎺ュ彛鎷垮埌鎵�鏈夌殑浠诲姟, 姣忎竴涓换鍔¢兘鏈夎嚜宸辩殑鍑犱釜绠楁硶
 //浠� taskid 浣滀负key, 瀵瑰簲鐨勭畻娉曠粍鍚堜綔涓� value
 func GenTasklab(tasklab []protomsg.TaskLabel) {
+	TaskMapLab.Range(func(key interface{}, value interface{}) bool {
+		TaskMapLab.Delete(key)
+		return true
+	})
+
 	for _, value := range tasklab {
-		TaskMapLab[value.Taskid] = &value
+		pv := value
+		TaskMapLab.Store(value.Taskid, &pv)
 	}
 }

--
Gitblit v1.8.0