package vqdsdk import ( "context" "easyvqd/internal/conf" "easyvqd/internal/core/host" "easyvqd/internal/core/vqd" "time" ) type Core struct { HostCore *host.Core VqdTaskCore *vqd.Core Cfg *conf.Bootstrap } func NewCore(HostCore *host.Core, VqdTaskCore *vqd.Core, Cfg *conf.Bootstrap) *Core { core := &Core{ HostCore: HostCore, VqdTaskCore: VqdTaskCore, Cfg: Cfg, } time.AfterFunc(time.Duration(5)*time.Second, func() { in := &vqd.AddVqdAlarmInput{ AlarmName: "遮挡告警", AlarmValue: "", ChannelID: "", ChannelName: "", TaskTemplateID: 0, TaskTemplateName: "", TaskID: 0, TaskName: "", FilePath: "", } for i := 0; i < 40; i++ { core.VqdTaskCore.AddVqdAlarm(context.TODO(), in) } }) // 启用定时清理任务 core.scheduleCleanTask() // 启用任务管理器 return core } // //func OpenVqdTask(VqdTaskCore *vqd.Core) *Workflow { // wf := NewWorkflow(WorkflowConfig{ // MaxConcurrency: 100, // 并发 // CleanupInterval: 30 * time.Second, // 每30秒清理一次 // MaxTaskHistory: 500, // 最多保留500个任务历史 // RetentionTime: 60 * time.Second, // 任务保留1分钟 // }) // // return wf //}