From 5dafbd6b419cfc436aece4ac8b5580532f12afea Mon Sep 17 00:00:00 2001
From: 554325746@qq.com <554325746@qq.com>
Date: 星期日, 16 六月 2019 13:41:50 +0800
Subject: [PATCH] release task
---
tasktag/tasktag.go | 68 ++++++++++++++++++++++-----------
1 files changed, 45 insertions(+), 23 deletions(-)
diff --git a/tasktag/tasktag.go b/tasktag/tasktag.go
index 0bc06ce..5f6cb8e 100644
--- a/tasktag/tasktag.go
+++ b/tasktag/tasktag.go
@@ -2,44 +2,66 @@
import (
"fmt"
+ "sync"
+
"basic.com/pubsub/protomsg.git"
- "basic.com/dbapi.git"
+ "github.com/long/test/util"
)
-var TaskMapLab = make(map[string] *protomsg.TaskLabel)
-var taskapi dbapi.TaskApi
+//var TaskMapLab = make(map[string]*protomsg.TaskLabel)
+var TaskMapLab sync.Map
func Init() {
- fmt.Println("=========== tasktag info ====================")
- var tls []protomsg.TaskLabel
+ fmt.Println("============= init tasktag info =====================")
+ GenTaskMap()
+ go func(taskflag chan bool) {
+ for _ = range taskflag {
+ GenTaskMap()
+ fmt.Println("update task finished!")
+ }
- taskSdks := taskapi.FindAll()
- for _, taskSdk := range taskSdks {
- fmt.Println("test: ", taskSdk)
- var tl protomsg.TaskLabel
- tl.Taskid = taskSdk.Task.Taskid
- for _, sdkinfo := range taskSdk.Sdks {
- tl.Sdkids = append(tl.Sdkids, sdkinfo.Id)
- }
- fmt.Println(tl)
- tl.Index=int32(0)
- tls = append(tls, tl)
- }
+ }(util.TaskSdkflag)
+}
+
+func GenTaskMap() {
+ var tls []protomsg.TaskLabel
+ for _, taskSdk := range util.TaskSdks {
+ var tl protomsg.TaskLabel
+ tl.Taskid = taskSdk.Task.Taskid
+ for _, sdkinfo := range taskSdk.Sdks {
+ tl.Sdkids = append(tl.Sdkids, sdkinfo.Id)
+ }
+ tl.Index = int32(0)
+ tls = append(tls, tl)
+ }
GenTasklab(tls)
- for key, value := range TaskMapLab {
- fmt.Println()
- fmt.Println(key, value)
- }
+ TaskMapLab.Range(func(k, v interface{}) bool {
+ fmt.Println(k, v)
+ return true
+ })
+
+ //for key, value := range TaskMapLab {
+ // fmt.Println()
+ // fmt.Println(key, value)
+ //}
}
// 浠巗qlite 鎺ュ彛鎷垮埌鎵�鏈夌殑浠诲姟, 姣忎竴涓换鍔¢兘鏈夎嚜宸辩殑鍑犱釜绠楁硶
//浠� taskid 浣滀负key, 瀵瑰簲鐨勭畻娉曠粍鍚堜綔涓� value
func GenTasklab(tasklab []protomsg.TaskLabel) {
+ // TaskMapLab = nil
+ // TaskMapLab = make(map[string]*protomsg.TaskLabel)
+ TaskMapLab.Range(func(key interface{}, value interface{}) bool {
+ TaskMapLab.Delete(key)
+ return true
+ })
+
for _, value := range tasklab {
- pv := value
- TaskMapLab[value.Taskid] = &pv
+ pv := value
+ TaskMapLab.Store(value.Taskid, &pv)
+ //TaskMapLab[value.Taskid] = &pv
}
}
--
Gitblit v1.8.0