package taskqueue import ( "fwh-toolbox-server/logger" "fwh-toolbox-server/types" "time" ) var ( TaskTypeSiteAnalysis = "task_SiteAnalysis" ) type TaskSiteAnalysis = types.TaskSiteAnalysis func handleTaskSiteAnalysis(payload TaskSiteAnalysis) { // TODO 执行任务(严格顺序) logger.Std.Printf("Processing task %s: %v\n", id, payload) time.Sleep(3 * time.Second) // 模拟耗时 } func EnqueueSiteAnalysisTask(payload TaskSiteAnalysis) error { p := TaskPayload[TaskSiteAnalysis]{ TaskPayloadBase: TaskPayloadBase{ Type: TaskTypeSiteAnalysis, }, Payload: payload, } if err := EnqueueTask[TaskSiteAnalysis](p); err != nil { logger.Std.Printf("EnqueueSiteAnalysisTask - %s : %s\n", payload.Id, err.Error()) return err } return nil }